查找薪水记录超过15条的员工号emp_no以及其对应的记录次数

首发于公众号:小肖学数据分析

描述

请你查找薪水记录超过15条的员工号emp_no以及其对应的记录次数t,例子输出如下:

emp_no t
10001 16

测试样例

sql 复制代码
CREATE TABLE salaries (
    emp_no INT,
    salary INT,
    from_date DATE,
    to_date DATE
);
​
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 60117, '1986-06-26', '1987-06-26');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 62102, '1987-06-26', '1988-06-25');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 66074, '1988-06-25', '1989-06-25');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 66596, '1989-06-25', '1990-06-25');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 66961, '1990-06-25', '1991-06-25');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 71046, '1991-06-25', '1992-06-24');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 74333, '1992-06-24', '1993-06-24');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 75286, '1993-06-24', '1994-06-24');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 75994, '1994-06-24', '1995-06-24');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 76884, '1995-06-24', '1996-06-23');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 80013, '1996-06-23', '1997-06-23');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 81025, '1997-06-23', '1998-06-23');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 81097, '1998-06-23', '1999-06-23');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 84917, '1999-06-23', '2000-06-22');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 85112, '2000-06-22', '2001-06-22');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10001, 85097, '2001-06-22', '2002-06-22');
INSERT INTO salaries (emp_no, salary, from_date, to_date) VALUES (10002, 72527, '1996-08-03', '1997-08-03');
​
-- 利用 group by having 实现
select emp_no,count(1) as t from salaries 
group by emp_no
having count(1)>15

GROUP BY和HAVING是一起使用的,用于在查询结果中对分组后的数据进行过滤。

GROUP BY语句用于将结果集按照一个或多个列进行分组,然后对每个分组进行聚合计算。

HAVING语句用于在GROUP BY的结果集中对分组后的数据进行过滤,只返回满足条件的分组。

语法:

sql 复制代码
SELECT 列1, 列2, ... 列n
FROM 表名
GROUP BY 列1, 列2, ... 列n
HAVING 条件;
相关推荐
wWYy.22 分钟前
Mysql:Read View
数据库·mysql
—Miss. Z—1 小时前
存储过程、用户定义函数、触发器和游标
数据库·mysql
Dear~yxy2 小时前
MySQL企业级实战
数据库·mysql
晚安code3 小时前
MySQL 开发规范清单:建表、索引、SQL、ORM 四块一次讲透
数据库·sql·mysql
ERD Online3 小时前
docker-compose 一键部署的 MIT 开源数据库建模平台
数据库·docker·开源
Data_Journal3 小时前
如何使用 Java 和 Jsoup 解析 HTML
大数据·开发语言·数据库·python·scrapy
lsz1525903 小时前
Citrix虚拟化实战:数据库虚拟机扩容流程图文简解
数据库·数据库扩容·citrix虚拟化·平台数据库扩容·虚拟机快照
weixin_727535624 小时前
mysql高频八股问答200
sql·mysql
云浪4 小时前
从 0 到实战:掌握向量数据库 Milvus,构建 AI 应用的核心能力
javascript·数据库·人工智能
tachibana24 小时前
知识库文档上传接口
数据库·人工智能·大模型·llm