Nejelegantnějším způsobem by bylo použití USING
klauzule v explicitní podmínce spojení:
SELECT houseid, v.vehid, v.epatmpg, d.houseid, d.trpmiles
FROM vehv2pub v
JOIN dayv2pub d USING (houseid)
WHERE v.vehid >= 1
AND d.trpmiles < 15;
Tímto způsobem sloupec houseid je ve výsledku pouze jednou , i když použijete SELECT * .
Chcete-li získat průměr epatmpg pro vybrané řádky:
SELECT avg(v.epatmpg) AS avg_epatmpg
FROM vehv2pub v
JOIN dayv2pub d USING (houseid)
WHERE v.vehid >= 1
AND d.trpmiles < 15;
Pokud je v dayv2pub více shod , může odvozená tabulka obsahovat více instancí každého řádku v vehv2pub po připojení. avg() je založen na odvozené tabulce.