Questo è un db postgres. Sto tentando di estrarre nomi di razze di cani (Cane Corso, Labrador, ecc.) Da una tabella di razza, per visualizzare in base alle chiavi estranee situate in una tabella animale. Il mio problema è che la tabella degli animali ha due chiavi esterne a questa tabella di razza singola, e continuo a ricevere errori con la mia query. Il nome della prima razza verrà restituito in base a un join di sinistra, mentre il secondo non è possibile visualizzare il nome poiché ho già un join di sinistra. Di seguito è riportato uno schema semplificato di quello che sto cercando di fare:Postgres multiple join
breed table (ID, BreedName)
animal table (ID, breedID, breed2ID)
SELECT animal.ID, breed.BreedName FROM animal LEFT JOIN breed ON animal.breedID=breed.ID WHERE animal.ID='7';
Cosa devo fare è ottenere il BreedName di unirsi per animal.breed2ID che sto fallendo miseramente a. Potrei facilmente codificare con difficoltà i nomi di razza e visualizzarli nell'applicazione, ma ciò non è favorevole a modifiche, aggiunte o cancellazioni di nomi di razza nel database.
Grazie mille. Questo ha chiarito e ha funzionato esattamente come previsto! Stavo scherzando solo facendo una razza.AnimalName AS breedName1, breed.AnimalName AS breedName2. Completamente mancato l'aliasing del tavolo! Grazie ancora, questo è il miglior aiuto che ho visto sui siti tecnologici! – user1137376
Hey nessun problema, ecco perché siamo qui: D Sono anche d'accordo con il post di StarShip3000. Ma ho pensato che i cani con 3 o più razze non si verifichino. Ma se lo fanno, assicurati di prendere l'avviso raccomandato da Star. – kingdaemon