博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
汇总各个部门当前员工的title类型的分配数目,结果给出部门编号dept_no、dept_name、其当前员工所有的title以及该类型title对应的数目count...
阅读量:5114 次
发布时间:2019-06-13

本文共 1631 字,大约阅读时间需要 5 分钟。

CREATE TABLE `departments` (
`dept_no` char(4) NOT NULL,
`dept_name` varchar(40) NOT NULL,
PRIMARY KEY (`dept_no`));
CREATE TABLE `dept_emp` (
`emp_no` int(11) NOT NULL,
`dept_no` char(4) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`dept_no`));
CREATE TABLE IF NOT EXISTS `titles` (
`emp_no` int(11) NOT NULL,
`title` varchar(50) NOT NULL,
`from_date` date NOT NULL,
`to_date` date DEFAULT NULL);

输入描述:

输出描述:

dept_no dept_name title count
d001 Marketing Senior Engineer 1
d001 Marketing Staff 1
d002 Finance Senior Engineer 1
d003 Human Resources Senior Staff 1
d004 Production Senior Engineer 2
d005 Development Senior Staff 1
d006 Quality Management Engineer 2
d006 Quality Management Senior Engineer 1
思路:看创建的表以及结果:tiltle是惟一的,需要的是 departments表和title表里面的dept_no,dept_name和title以及title的重复计数,但是departments和title表没有直接关系, 1.连接dept_emp和titles表,判断to_data=‘9999-01-01’ ,d.emp_no=t.emp_no 2.连接department和1操作之后的表,条件dept_no== 3.group by dept_no,title
SELECT de.dept_no, dp.dept_name, t.title, COUNT(t.title) AS countFROM titles AS t INNER JOIN dept_emp AS de ON t.emp_no = de.emp_no AND de.to_date = '9999-01-01' AND t.to_date = '9999-01-01'INNER JOIN departments AS dp ON de.dept_no = dp.dept_noGROUP BY de.dept_no, t.title

 

select dp.dept_no, dp.dept_name, t.title, count(t.title) as count from titles as t inner join dept_emp as deon t.emp_no = de.emp_no and t.to_date = '9999-01-01'and de.to_date = '9999-01-01'inner join departments as dpon de.dept_no = dp.dept_nogroup by t.title ,de.dept_no   --group by 后面的顺序修改,输出顺序不同,不是输出描述中所需要的表,导致出错不通过

 

转载于:https://www.cnblogs.com/pipiyan/p/10644819.html

你可能感兴趣的文章
移动设备显示尺寸大全 CSS3媒体查询
查看>>
hihoCoder #1831 : 80 Days-RMQ (ACM/ICPC 2018亚洲区预选赛北京赛站网络赛)
查看>>
图片等比例缩放及图片上下剧中
查看>>
jQuery方法大全
查看>>
WebView加载网页详情
查看>>
【转载】Linux screen 命令详解
查看>>
dd命令 建立两颗一模一样的磁盘
查看>>
常用的jquery触屏手机页面特效代码下载
查看>>
background-clip,background-origin
查看>>
C# 如何创建一个Windows服务
查看>>
集群和分布式区别
查看>>
Android(java)学习笔记153:采用post请求提交数据到服务器(qq登录案例)
查看>>
Java基础知识强化101:Java 中的 String对象真的不可变吗 ?
查看>>
Android 高级UI设计笔记12:ImageSwitcher图片切换器
查看>>
虚拟主机与虚拟目录学习小结
查看>>
hlg1414安装雷达【贪心】
查看>>
Blog文章待看
查看>>
Golang flag包使用详解(一)
查看>>
python文件IO
查看>>
regsvr32简介
查看>>