PDA

View Full Version : [SQL] Recuperare dati diversi dalla stessa tabella in join


Torav
07-12-2008, 10:45
buona domenica :p
ho un problema che non so come risolvere, penso per la mia ignoranza di SQL (in effetti non so se nemmeno se il titolo č giusto :D )
Semplificando diciamo che ho due tabella, una di dischi e una di case discografiche. Nella tabella di dischi ho due campi: casa discografica di produzione e casa di distribuzione. Ovviamente nella tabella dei dischi tengo solamente gli id, i nomi sono nell'altra. Mi chiedevo come ottenere i nomi associati a ENTRAMBI gli id per ogni record. La query che uso ora ovviamente mi ritorna i due campi riempiti con lo stesso valore:

SELECT b.nomecasaprod, b.nomecasaprod FROM dischi a, casediscog b WHERE b.idprod=a.casaprod AND b.idprod=a.casadistr

quindi non mi serve ovviamente a nulla :stordita:

Kralizek
07-12-2008, 11:42
mettiamo che hai

TabellaA (ID, Campo1, Campo2, RifTabB1, RifTabB2)

TabellaB (ID, Campo3, Campo4)

Puoi fare cosė


SELECT A.*, B1.*, B2.* FROM
TabellaA AS A INNER JOIN TabellaB AS B1 ON A.RifTabB1 = B1.ID
INNER JOIN TabellaB AS B2 ON A.RifTabB2 = B2.ID


Ovviamente puoi proiettare i campi ottenuti per visualizzare solo le cose che ti interessano ;)

Torav
07-12-2008, 12:09
grande! :D
Funziona perfettamente, grazie mille :)