想要唯一的记录——啥是 SQL?

Posted

技术标签:

【中文标题】想要唯一的记录——啥是 SQL?【英文标题】:Want unique records - what is the SQL?想要唯一的记录——什么是 SQL? 【发布时间】:2014-02-15 17:45:51 【问题描述】:

我有这张桌子

 User | File | SubmittedDate

 Joe    1223.txt  2011-11-12
 Joe    3321.txt  2011-11-13
 Jack   4332.txt  2012-11-22
 Jane   2344.txt  2012-11-10

我想选择,所以我只得到 Joe 的一张唱片、Jack 的一张唱片和 Jane 的一张唱片。

例如

Joe    1223.txt  2011-11-12
Jack   4332.txt  2012-11-22
Jane   2344.txt  2012-11-10

换句话说,我想要一个具有唯一用户字段的行结果集。得到这个的 SQL 是什么?

【问题讨论】:

-1 表示未能证明解决问题的尝试。 -1 到目前为止你尝试了什么? 我有个更好的主意。我发布了一个可以回答的问题。知道答案的人只需将其粘贴进去。我给答案投票并投票。每个人都赢了。 米海给出了最好的答案。如果他在下面发布答案,我会投票给他作为最佳答案。 【参考方案1】:

一个非常快速的谷歌搜索会告诉你有几个可能的选择:

https://www.google.com/search?client=safari&rls=en&q=select+unique+values+from+sql&ie=UTF-8&oe=UTF-8

其中之一是使用 DISTINCT 关键字:

SELECT DISTINCT User FROM ....

【讨论】:

谢谢亚伦。 :) 实际上,我首先进行了快速的 Google 搜索。 :) 如果不是 all 两行的字段相同,我对 DISTINCT 实际上是否会返回唯一行感到困惑。是的,我们本可以来回讨论我试图做什么,但如果我提出一个简单的问题并得到我知道有效的代码,那么浪费的时间就会更少。我知道这个论坛上有 SQL 专家,他们会确切地知道我的意思,并简单地发布一个指向 SQL 小提琴的链接。到目前为止已经发生了几次。

以上是关于想要唯一的记录——啥是 SQL?的主要内容,如果未能解决你的问题,请参考以下文章

数据库中,啥是超关键字,候选关键字,主关键字?麻烦举例说明

SQL中啥叫主键,啥是外键,有啥关系

删除重复的 SQL 记录以允许唯一键

电脑硬件信息啥是唯一的,或者不容易修改的。

SQL:根据最近的日期选择一个字段中的值是唯一的记录

如何从 oracle SQL 的结果中选择唯一记录?