‘壹’ 求sql.表A(姓名,部门,职称)。能够通过一条SQL统计出每个部门各种职称分别有几个人
select 部门 职称 count(姓名) as 人数 from A group by 部门 职称
注释:部门、职称、姓名是A表中的字段名;
as 后的‘人数’是给聚合后的字段起个别名;
总体原理:根据部门和职称分组后聚合姓名即可得到你想要的结果。
‘贰’ 我有个部门表,表结构如图,如何用sql语句筛选出市场部的末级部门(红色字体的数据12-16)
首先你最好把15 16里面的部门全称改为“某集团/某集团公司A/市场部/”开头的,这样查询语句就好写了
select * from 部门表 where SGO3(部门全称) like "某集团/某集团公司A/市场部/% "
其中的%符号代表多个字符,望采纳谢谢
‘叁’ sql 员工表和部门表问题
select dept.did,dept.name,count(emp.id)
from dept
join emp on emp.deptid=dept.id
group by dept.did,dept.name
把join 改为left join 就能查出0人的部门
‘肆’ sql查询出所有员工所属部门和所属岗位
selectemployee_id,last_name,department_id,department_name,job_.department_id=d.department_idleftjoinjob_historyjond.department_id=j.department_id;
员工表:employees
部门表:departments
岗位表:job_history
selert 员工id,员工名字,部门id,部门名称,岗位id from 员工表 别名 left join 部门表 别名 on 员工表的部门id = 部门表的部门id left join 岗位表 别名 on 部门表的岗位id = 岗位表的岗位id;
‘伍’ 求高手帮忙写一条sql语句。 一个部门表,一个员工表,一个员工任务表。 查询某个员工所在部门的所有任务
为什么不做视图啊。
我先
select 任务 from 员工任务表 where 员工 in ( sleect 员工 form 部门表 where 部门=(select 部门 from 员工表 where 员工=‘员工’) )
‘陆’ 如何创建SQL部门信息表,部门编号100101。 部门名称财务部和部门编号10010
按照如下代码即可:
InsertInto表明(部门编号,部门名称)Values("100101","财务部");
千万别忘了最后面的那个半角的分号。
‘柒’ sql中已知职工表,部门表,工资表求各部门职工平均工资
1、select avg(t1.工资)as avgslr,t2.部门ID as dep_id from 工资表 t1,职工表 t2 where t1.职工号=t2.职工号 group by dep_id
2、select count(*) as 入党人数,部门ID as dep_id from 职工表 where 入党没有=true group by dep_id
‘捌’ 急求代码!! 1.使用SQL编程2.部门表(部门名称,部门编
咨询记录 · 回答于2021-06-04
‘玖’ SQL语句解决部门表中,已知父部门的情况下,插入部门层级列。
--建表
CreatetableT
(
BMBHvarchar(10),
SSBMVarchar(10)
)
--插入数据
insertintoTvalues('0000','')
insertintoTvalues('1000','0000')
insertintoTvalues('1100','1000')
insertintoTvalues('1101','1100')
insertintoTvalues('1102','1100')
insertintoTvalues('1103','1100')
insertintoTvalues('1200','1000')
insertintoTvalues('1201','1200')
insertintoTvalues('1202','1200')
insertintoTvalues('1203','1200')
--查询
;
WithCT
As
(
selectBMBH,SSBM,0AslvfromTwhereSSBM=''
unionall
selectT.BMBH,T.SSBM,lv+1fromCTinnerjoinTonCT.BMBH=T.SSBM
)
Select*FromCT
--效果
--如果是要更新回去的话
--添加1列lx
altertableTaddlxint
--更新层级
WithCT
As
(
selectBMBH,SSBM,0AslvfromTwhereSSBM=''
unionall
selectT.BMBH,T.SSBM,lv+1fromCTinnerjoinTonCT.BMBH=T.SSBM
)
UpdateTSetlx=lv
FromCT
WhereT.BMBH=CT.BMBH