SQL中distinct如何使用

51次阅读
没有评论

共计 945 个字符,预计需要花费 3 分钟才能阅读完成。

自动写代码机器人,免费开通

今天就跟大家聊聊有关 SQL 中 distinct 如何使用,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

在使用 mysql 时,有时需要查询出某个字段不重复的记录,虽然 mysql 提供有 distinct 这个关键字来过滤掉多余的重复记录只保留一条,但往往只 用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值。其原因是 distinct 只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰很久,用 distinct 不能解决的话,我只有用二重循环查询来解决,而这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的,所以浪费了我大量时间。

在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。关键词 distinct 用于返回唯一不同的值。

表 A:

示例 1

复制代码 代码如下:
select distinct name from A

执行后结果如下:

示例 2

复制代码 代码如下:
select distinct name, id from A

执行后结果如下:

实际上是根据“name+id”来去重,distinct 同时作用在了 name 和 id 上,这种方式 Access 和 SQL Server 同时支持。

示例 3:统计

复制代码 代码如下:
select count(distinct name) from A; – 表中 name 去重后的数目,SQL Server 支持,而 Access 不支持 select count(distinct name, id) from A; –SQL Server 和 Access 都不支持

示例 4

复制代码 代码如下:
select id, distinct name from A; – 会提示错误,因为 distinct 必须放在开头

其他

distinct 语句中 select 显示的字段只能是 distinct 指定的字段,其他字段是不可能出现的。例如,假如表 A 有“备注”列,如果想获取 distinc name,以及对应的“备注”字段,想直接通过 distinct 是不可能实现的。

看完上述内容,你们对 SQL 中 distinct 如何使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

向 AI 问一下细节

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-04发表,共计945字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)