刷题-----【数据库SQL实战】查找的员工号emp_n薪水涨幅超过15次o以及其对应的涨幅次数t(亲测正确的)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011877584/article/details/81266544

题目描述

查找薪水涨幅超过15次的员工号emp_no以及其对应的涨幅次数t
CREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`));

输入描述:

输出描述:

emp_no t
10001 17
10004 16
10009 18

示例1

输入

输出

-------------------------------------------------------------------------------

参考代码:

第一种:

SELECT
    a.emp_no,
    count(a.salary) AS t
FROM
    (
        SELECT DISTINCT
            emp_no,
            salary
        FROM
            salaries
    ) a
GROUP BY
    a.emp_no having t >15;

第二种:

select  s.emp_no,count(DISTINCT s.salary) as t from salaries s group by s.emp_no having t >2;

------------------------

分析:

自己测试:

薪水涨幅超过15次太多了,我搞个2次。

在某网站刷sql,感觉评论区好多网友的不对。

猜你喜欢

转载自blog.csdn.net/u011877584/article/details/81266544