SQL今日一题(7):去重

这是一篇关于SQL去重问题的文章,聚焦如何找出所有员工当前薪水(to_date='9999-01-01')且去除重复项。文章提供了两种方法,一是使用`DISTINCT`关键字,二是通过`GROUP BY`分组。文中还介绍了`DISTINCT`和`GROUP BY`的差异,并强调在大量数据时`GROUP BY`的效率优势。此外,文章还提到了`ORDER BY`用于降序排列的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是SQL今日一题的第7篇文章

题目描述

找出所有员工当前(to_date='9999-01-01')具体的薪水salary情况,对于相同的薪水只显示一次,并按照逆序显示。(只输出salary)

这题用到salaries表

 

方法1

select distinct salary from salaries 
where to_date = '9999-01-01'
order by salary desc

1、这道题就简单许多了,首先我们知道salaries表里一个员工编号可能对应多条记录,因为是由薪资变化的,所以这题给了限制条件“当前”,即to_date = '9999-01-01'

2、同时对于薪资相同的只输出一条,就用distinct去重即可

3、最后降序排列

方法2

select salary from salaries 
where to_date = '9999-01-01'
group by salary
order by salary desc

1、where子句限定当前日期的条件

2、group by对salary分组,也可以达到去重的效果,和distinct的区别在于数据量大的时候,可以使用group by,比用distinct效率高。

3、最后order by降序

知识点

distinct

  • 检索不同行
  • distinct column,放在列名前

group by

  • group by子句用来创建分组,
  • group by子句要写在where后,order by 前

order by

  • order by column,指定单个列排序
  • order by column1,column2,多个列排序,逗号隔开
  • 默认升序,即ASC,如需降序,后加DESC,如order by column desc

猜你喜欢:
数据分析应关注AARRR模型的哪些指标

泰坦尼克号数据分析

深入浅出数据分析

《吊打分析师》实战—我要租个好房

为什么要学统计学:赤裸裸的统计学

成为数据分析师的第三年,我写了10W字

@ 作者:可乐
@ 公众号/知乎专栏/头条/简书:可乐的数据分析之路
@加个人微信:data_cola,备注:进群,拉你入 可乐的数据分析群 和各行各业的小伙伴交流探讨数据分析相关内容

微信公众号

微信公众号

个人微信号

个人微信号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

进击的可乐!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值