好的,简单的问题:我有一张桌子
create table people (
id int auto_increment not null primary key,
name varchar(32),
city varchar(32),
age int
);
带有查询
SELECT city, age
FROM people
WHERE age=(SELECT max(age) from people);
我可以得到城市的输出和最老的人的年龄。
City Age
Denver 95
我如何获得每个城市的最大年龄,即
City Age
Atlanta 90
Cincinnati 87
Denver 95
答案 0 :(得分:2)
SELECT city, MAX(age)
FROM people
GROUP BY city
这是MySQL聚合函数的使用。通过提供一个额外的列并在GROUP BY中指定它,您告诉MySQL只在这些匹配的记录中应用聚合函数(在我们的例子中为MAX)。
您可以阅读有关聚合here的更多信息。
答案 1 :(得分:0)
您的查询可以简化为
SELECT city, age
FROM people
order by age desc
limit 1