ITPub博客

首页 > 数据库 > > SQL DISTINCT

SQL DISTINCT

作者:浪花小雨滴 时间:2020-05-14 15:42:34 0 删除 编辑

SQL DISTINCT 的作用就是用来返回唯一不同的值。

在工作中,我们常常会碰到某些表会有重复的值,而我们因业务需求却仅需要唯一值的数据报表,此时就会用到distinct来过滤了


SQL DISTINCT 语法

SELECT  DISTINCT  列名称 FROM  表名称

举例:

用SELECT查询表中"city"列的数据如下:

SELECT city FROM Users;

"User"表:


从结果来看,有多条记录是重复的值。如果只需要唯一不同的记录,那么我们可以使用SELECT DISTINCT语句:

SELECT DISTINCT city FROM Users;

现在从结果集中可以看到北京、南京、上海都仅列出一次记录了。


大家伙可能有疑问?上面例子返回的只有一列,那想要返回多列呢?

先看下面例子:

SELECT DISTINCT city,name FROM Users;

输出结果集:

大家从输出的结果集可以看到,并非我们想要的结果。感觉语句不生效了?也不是,其实语句是生效的,只不过是要满足ctiy和name两列的值同时相等才可以返回唯一值记录。


那如果想同时要看到多列内容怎么办?想直接通过distinct来实现真没办法,如果大家伙想到好的办法,请分享一下。那就没有办法了吗?答案是有的,通过group by语句还是可以实现的。


distinct必须放在开头,就是第一个列名称前面。

select name,distinct city from users --此语句会报错的!!!




来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3159812/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-05-16

  • 博文量
    4259
  • 访问量
    40029