【发布时间】:2012-08-27 16:16:10
【问题描述】:
我有一个包含 3 列的表格,如下所示:
+------------+---------------+-------+
| Country_id | country_title | State |
+------------+---------------+-------+
这张表有很多条记录。其中一些有state,而另一些则没有。现在,想象一下这些记录:
1 | Canada | Alberta
2 | Canada | British Columbia
3 | Canada | Manitoba
4 | China |
我需要有没有任何重复的国家名称。实际上我需要他们的id 和title,最好的 SQL 命令是什么?我在下面的表格中使用了DISTINCT,但我无法获得合适的结果。
SELECT DISTINCT title,id FROM tbl_countries ORDER BY title
我想要的结果是这样的:
1, Canada
4, China
【问题讨论】:
-
你从你尝试的查询中得到了什么结果,它与你想要的有什么不同?
-
我得到的结果集包含许多包含加拿大的记录。
-
你想做什么?你能展示你想要的结果集是什么吗?让它明确。我的意思是不要只用你自己的话来描述你想要什么。更新您的问题,以表格格式以清晰准确的方式显示您获得的准确结果和所需的准确结果。
-
您写“实际上我需要他们的 id 和标题”(即两列),但在您的编辑中,所需的结果只有一列。请解释这种差异。
-
@MarkByers 我需要防止国家名称的重复记录。我的意思是我不喜欢展示第二个加拿大,而我之前有 1 个。
标签: sql select duplicates distinct