导航
  • 主页
  • 基础类
  • 应用实例
  • 新技术前沿

请教个简单sql语句

singlepine 2007-10-12 03:16:25
表A
员工号 培训时间
1 2
2 4
3 6
4 3
5 1
6 1
表B
员工号 员工所属部门
1 办公室
2 办公室
3 客服
4 客服
5 开发
6 开发
要求最后查询出的结果:
部门 部门员工数 该部门员工参加培训的最少天数 该部门参加培训天数最少的人数
办公室 2 2 1
客服 2 3 1
开发 2 1 1
...全文
188 点赞 收藏 13
写回复
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
fengming2222 2007-10-14
select b.员工所属部门 部门 , min(a.培训时间) 该部门员工参加培训的最少天数
from a inner join b on a.员工号=b.员工号 group by b.员工所属部门

回复
neo_maxwell 2007-10-14
部门 部门员工数 该部门员工参加培训的最少天数 该部门参加培训天数最少的人数
办公室 2 2 1
客服 2 3 1
开发 2 1 1

关于该部门参加培训天数最少的人数
5 开发
6 开发
5 1
6 1
那么5和6不都是培训天数都是1,也就是该部门培训的最小值
怎么会得出该部门参加培训天数最少的人数为1呢
这个比较是如何得出的?不太明白

回复

create table A(id int,days int)
create table B(id int,department varchar(50))
insert into A
select 1 , 2 union all
select 2 , 4 union all
select 3 , 6 union all
select 4 , 3 union all
select 5 , 1 union all
select 6 , 1
insert into B
select 1 , '办公室' union all
select 2 , '办公室' union all
select 3 , '客服' union all
select 4 , '客服' union all
select 5 , '开发' union all
select 6 , '开发'
select
B.department as '部门',
count(A.id) as '部门员工数',
min(A.days) as '该部门员工参加培训的最少天数'
from A,B
where
A.id=B.id
group by B.department
回复
liangpei2008 2007-10-14
学习~
回复
hbjlwhl 2007-10-14
select 员工所属部门,count(tb.员工号) 员工人数,min(培训时间) 最少培训时间
from tb,tb1 where tb1.员工号=tb.员工号 group by 员工所属部门
回复
hbjlwhl 2007-10-14
超级佩服乌龟大哥.
回复
snsofterp 2007-10-13
乌龟大哥真厉害~~是要求太高了吧,你也能失业吖?
回复
spinach_xu 2007-10-12
min(a.培训时间)没有体现该部门培训的最少时间吧?而是全部人员的培训最少时间~?
回复
dawugui 2007-10-12
因为我没有工作,失业了.
回复
pt1314917 2007-10-12
顺便问个问题,乌龟大哥,怎么你那么有空的么?
回答问题那么积极,PF!!!
俺一边工作,偶尔刷新看帖子,都觉得够呛````
回复
dawugui 2007-10-12
select b.员工所属部门 部门 , min(a.培训时间) 该部门员工参加培训的最少天数
from a,b
where a.员工号=b.员工号
回复
pt1314917 2007-10-12
怎么算的?看不太明白``
回复
dawugui 2007-10-12
该部门参加培训天数最少的人数?
这个啥意思?
回复
发动态
发帖子
MS-SQL Server
创建于2007-09-28

3.2w+

社区成员

MS-SQL Server相关内容讨论专区
申请成为版主
社区公告
暂无公告