MySQL做题简单篇-(找出所有员工当前薪水salary情况)

  • Post author:
  • Post category:mysql


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

描述

有一个薪水表,salaries简况如下:

请你找出所有员工具体的薪水salary情况,对于相同的薪水只显示一次,并按照逆序显示,以上例子输出如下:

需要的薪水内容是:

思考:这里只要显示薪水,而且是按照只显示一个的原则来进行,所以:

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

直接选择薪水,按照薪水排序并且输出即可。

这里要注意的一个问题是distinct ,了解到大公司做大数据筛选的时候很少用到distinct ,应该是由于这样筛选效率很低,况且使用起来也不方便,所以,我们需要这样改一下。

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

采用按照工资分组的方式,自然地将相同工资的信息归为一类,如果加上一共count(*)还能知道有哪些工资是很多人领到的, 可以做数据图。



版权声明:本文为weixin_55435895原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。