题目描述这是SQL今日一题的第7篇文章
找出所有员工当前(to_date='9999-01-01')具体的薪水salary情况,对于相同的薪水只显示一次,并按照逆序显示。(只输出salary)
这题用到salaries表
selectdistinctsalaryfromsalaries
whereto_date='9999-01-01'
orderbysalarydesc
1、这道题就简单许多了,首先我们知道salaries表里一个员工编号可能对应多条记录,因为是由薪资变化的,所以这题给了限制条件“当前”,即to_date = '9999-01-01'
2、同时对于薪资相同的只输出一条,就用distinct去重即可
3、最后降序排列
方法2selectsalaryfromsalaries
whereto_date='9999-01-01'
groupbysalary
orderbysalarydesc
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模型的哪些指标
泰坦尼克号数据分析
深入浅出数据分析
@ 作者:可乐
@ 公众号/知乎专栏/头条/简书:可乐的数据分析之路
@加个人微信:data_cola,备注:进群,拉你入 可乐的数据分析群 和各行各业的小伙伴交流探讨数据分析相关内容