【发布时间】:2016-02-02 17:31:24
【问题描述】:
有没有办法使用 DISTINCT(或其他关键字)不在一列上显示重复的结果?例如,如果我有一个包含列的表:id、name 和 countryCode
id name countryCode
1 Dan IE
2 John US
3 John UK
4 Bob DE
而且我不想显示名称相同的重复项,因此结果将是:
id name countryCode
1 Dan IE
2 John US
4 Bob DE
如果我在这里使用 DISTINCT,它需要匹配整行,但我只想在名称匹配时省略一行。有没有办法做到这一点?我在这里找到了类似的解决方案:DISTINCT for only one Column
但这不适用于 mySQL。任何帮助将不胜感激。
【问题讨论】:
-
那么取哪个县码?
-
怎么不行?您的查询是什么?
-
distinct 不是一个函数,所以你不能只对一列使用它,它适用于所有选定的列。在您的示例中,为什么您为 John 选择第 2 行而不是第 3 行?
-
我不介意采用哪个国家代码,但如果有办法选择其中一个,那就太好了
标签: mysql