广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    SQL如何获取不重复的数据,去重后的数据行数?

    来源:网络收集  点击:  时间:2024-06-02
    【导读】:
    使用SQL在对数据做统计分析的时候,经常需要对数据进行过滤,筛选出不重复的记录,以及统计不重复的记录行数,那么,该如何实现呢?方法/步骤1/7分步阅读

    创建一个临时表,用于演示sqlserver语法中的去重关键字distinct的使用。本文以sqlserver数据库为例演示

    IF OBJECT_ID(tempdb..#tmp1) IS NOT NULL DROP TABLE #tmp1;

    CREATE TABLE #tmp1(

    Col1 varchar(50),

    Col2 int

    );

    2/7

    往临时表中插入几行测试数陕凤英据,用于演示distinct的使用

    insert into #tmp1(Col1, Col2) values(Code10, 10);

    insert into #tmp1(Col1, Col2) values(Code20, 20);

    insert into #tmp1(Col1, Col2) values(Code10, 10);

    insert into #tmp1(Col1, Col2) values(Code5, 20);

    3/7

    查询临时表中所有的测试数据

    select * from #tmp1;

    4/7

    使用distinct查询出整个表所有字段值不重复的记录

    select distinct * from #tmp1

    5/7

    distinct除了过滤整个表不重复的记录之外,还可以对指陵泉定列去重复,多个列使用逗号分开即可

    select distinct Col1 from #tmp1;

    select distinct Col1, Col2 from #tmp1;

    6/7

    如果想返回临时表中Col1列不重复的记录行数,该如何书写sql语句呢?使用下面的sql,从运行结果来看,并没有达到预期的效果

    select distinct count(Col1) from #tmp1;

    7/7

    试着把distinct和count交换一个戴仗位置,sql语句执行会怎么样呢?从运行结果可以看出,这样写就可以达到预期的效果,Col1列的不重复行数正确的返回了

    select count(distinct Col1) from #tmp1;

    SQLDISTINCTCOUNT去重统计
    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_872988.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-07 19:39:41  耗时:0.023
    0.0234s