如何从表中选择所有内容,并且如果列的值相同,name则仅选择具有id最大值的行,因此,如果有这样的表:
name
id
id name age country ---+------+---+------- 1 bob 24 UK 2 john 48 USA 3 janet 72 USSR 4 bob 96 Ukraine
它只会选择ID最高的“ bob”,因此结果将返回:
id name age country ---+------+---+------- 2 john 48 USA 3 janet 72 USSR 4 bob 96 Ukraine
谢谢你。
您可以使用子查询来计算每个名称的最大ID,然后返回与该子查询返回的ID匹配的所有行:
SELECT * FROM People WHERE id IN (SELECT MAX(id) FROM People GROUP BY Name)
请看这里的小提琴。