ugrás a tartalomhoz

Többtáblás lekérdezések miben különböznek?

Max Logan · 2007. Aug. 21. (K), 19.11
Az lenne a kérdésem, hogy az alább található két lekérés közül melyik a szebb / szabványosabb megoldás?
SELECT language.id, language.language, databases.db_name
FROM (language, databases)
INNER JOIN (users) ON ( users.db = databases.id AND users.language_id = language.id ) 
WHERE users.username = 'user-neve'
vagy
SELECT language.id, language.language, databases.db_name
FROM (language, databases)
INNER JOIN (users u1) ON (u1.db = databases.id)
INNER JOIN (users u2) ON (u2.language_id = language.id)
WHERE u2.username = 'user-neve'
 
1

Nem ugyanaz

Rici · 2007. Aug. 21. (K), 21.21
A két lekérdezés nem ugyanazt jelenti, úgyhogy innentől kicsit más jellegűvé válik a probléma.

Jó lenne tudni, hogy mit akarsz elérni.
2

Valóban ...

Max Logan · 2007. Aug. 21. (K), 22.08
Igazából egy régebbi doksimban találtam a két lekérést és vmiért úgy rémlett, hogy ugyanazt csinálják, csak másképpen van írva.

Most hogy kipróbáltam nekem az első működésére volt szükségem, tehát a users táblában lévő felhasználóhoz tartozó nyelv id-t és nyelv megnevezést, valamint egy adatbázis nevet kellett lekérni, amik két külön táblában vannak. Annó azért írtam az elsőt, hogy egy lépésben tudjak két táblából lekérni a users tábla alapján.