截图:
嗨,我想在functie.code =
中添加另一个数字,以便得到functie.code=34和5的人的结果。
但我该怎么做呢?
SELECT distinct voornaam,achternaam,provincie,functie.naam,max(provincie)
FROM medewerker,functie,persoon,adres
WHERE medewerker.Functie_Code = functie.Code
AND medewerker.Persoon_idPersoon = persoon.idPersoon
AND persoon.Adres_idAdres = adres.idAdres
AND functie.code IN ( 3, 4, 5)
提前谢谢
最佳答案
在max()
中有一个select
。这会将查询转换为不带group by
的聚合查询,该查询只返回一行。
另外,您使用的是古老的连接语法。简单规则:不要在from
子句中使用逗号。
这样的查询大概可以满足您的需要:
SELECT voornaam, achternaam, provincie, f.naam, provincie
FROM medewerker m JOIN
functie f
ON m.Functie_Code = f.Code JOIN
persoon p
ON m.Persoon_idPersoon = p.idPersoon JOIN
adres a
ON p.Adres_idAdres = a.idAdres
WHERE f.code IN ( 3, 4, 5);
不清楚您是否需要
SELECT DISTINCT
。如果没有,那么不要在查询中不必要地使用它。