讲座和实验室作业中的一些内容没有得到很好的解释。我无法显示正确的信息。 这是数据库信息,只是您的帮助我的参考。 The database tables info 这是我试图执行的查询 The postgresql php select statement
这会导致抛出此SQl错误
连接数据库! 查询失败:错误:列“city.name”必须出现在GROUP BY子句中或用于聚合函数LINE 3:city.name ^
现在,如果我将city.name添加到GROUP BY子句中,它将返回4096行!我不希望这种情况发生,结果必须按国家名称分组,即232行。我只是想显示国家名称,城市名称以及该国家人口最多的城市。城市名称让我失望,我猜测有更复杂的语法重要解决方案。 感谢您的任何帮助,您可以提供。 -Tom Reese
答案 0 :(得分:0)
你需要这样的东西:
select
country.name,
city.name,
mp.maxpop
from
lab6.country,
lab6.city,
(select
country_code,
max(population) as maxpop
from
lab6.city
group by
country_code
) mp
where
country.country_code=mp.country_code and
country.country_code=city.county_code and
mp.maxpop=city.population
注释: