-
USING (fieldname) je zkrácený způsob, jak říci ON table1.fieldname =table2.fieldname.
-
SQL nedefinuje 'pořadí', ve kterém se JOINS provádějí, protože to není povaha jazyka. Je zřejmé, že v prohlášení musí být uvedeno pořadí, ale INNER JOIN lze považovat za komutativní:můžete je uvést v libovolném pořadí a získáte stejné výsledky.
To znamená, že při sestavování SELECT ... JOIN, zejména takového, který obsahuje LEFT JOINy, jsem zjistil, že dává smysl považovat třetí JOIN za připojení nové tabulky k výsledkům prvního JOIN, čtvrtý JOIN za připojení k výsledky druhého JOIN a tak dále.
Vzácněji může zadané pořadí ovlivnit chování optimalizátoru dotazů kvůli způsobu, jakým ovlivňuje heuristiku.
-
Ne. Způsob, jakým je dotaz sestaven, vyžaduje, aby společnosti i uživatelé měli ID společnosti, úlohy mají ID uživatele a ID úlohy a uživatelské účty mají ID uživatele. Pouze jedna ze společností nebo uživatel potřebuje ID uživatele, aby funkce JOIN fungovala.
-
Klauzule WHERE filtruje celý výsledek – tedy všechny sloupce JOINed – pomocí sloupce poskytnutého tabulkou úloh.