㈠ 列出各个部门中工资高于本部门的平均工资的员工数和部门号,并按部门号排序。用sql语句详细介绍一下,谢
select a.deptno,count(*) from emp as a,
(select deptno,avg(sal) as avgsal from emp group by deptno) as b
where a.deptno=b.deptno
and a.sal>b.avgsal
group by a.deptno
order by a.deptno
表名为emp,deptno为部门号
(select deptno,avg(sal) as avgsal from emp group by deptno) as b
这个是查询每个部门的平均工资,并把这个结果集命名为b
然后关联emp表查询
where a.deptno=b.deptno
and a.sal>b.avgsal
这个就是在部门号相同的情况下,查找工资大于平均公司的人
最后count(*) 就是总人数,排序就正常order by 就OK
㈡ 数据库 有部门字段 和工资字段 按照部门分组再按照工资排序 sql怎么写
使用GROUP BY
SELECT 部门,工资 FROM 表
GROUP BY 部门,工资
ORDER BY 工资
㈢ 求一SQL语句,按工号排序,将工资值累加不超过一万的所有行查出来,如
select top 3 A.GH,SUM(A.MONEY) from A group by A.GH having SUM(A.MONEY)<10000 order by a.gh desc
㈣ sql中把雇员信息按照工资的从小到大排列后再选择第10位到15位的人
oracle10g以上及sqlserver2005以上适用
selectt.*from
(select表名.*,row_number()over(orderbysaldesc)rnfrom表名)
wherernbetween10and15
㈤ sql语句求出第三到第五的工资
sql查询员工的基本工资排名第3-5位的姓名和基本工资,select top 4 姓名,工资 from 表a where 姓名 not in (select top 2 姓名 from 表a order by 工资 desc) order by 工资 desc
查工资的方法:
1、select * from 部门
2、where not exists (select * from 员工 where 员工.部门号=部门.部门号 and 工资 <= 5000)
㈥ 用sql语句将部门号,员工号,职位按工资大小排序
select 部门号,员工号,职位 from table order by 工资 asc [默认可以不写]从小到大
select 部门号,员工号,职位 from table order by 工资 desc 从大到小
㈦ 用SQL语句查出员工工资表(WorersSalary)所有信息,工资最高的前三条信息按升序排在最前面,其余的按原序
请说明使用的数据库类型
mysql如下
select distinct * from(
select * from WorersSalary orde by Salary desc limit 0,3 a union
select * from WorersSalary b)
sqlserver如下
select distinct * from(
select top 3 * from WorersSalary orde by Salary desc a union
select * from WorersSalary b)
㈧ oracle数据库。查询部门平均工资,平且显示工资等级,按部门分组,sql语句怎么写
如果是scott下的那几张表的话
selectt1.deptno,
t1.dname,
t1.avgsal,
max(case
whent1.avgsalbetweent2.losalandt2.hisalthen
t2.grade
end)grade
from(selecta.deptno,b.dname,round(avg(a.sal),2)avgsal
fromempa,deptb
wherea.deptno=b.deptno
groupbya.deptno,b.dname)t1,
salgradet2
groupbyt1.deptno,t1.dname,t1.avgsal
orderbyt1.deptno;
查询结果
㈨ sql查询员工的基本工资排名第3-6位的姓名和基本工资
sql查询员工的基本工资排名第3-6位的姓名和基本工资
select top 4 姓名,工资 from 表a where 姓名 not in (select top 2 姓名 from 表a order by 工资 desc) order by 工资 desc
㈩ 用sql查询薪水等级为2,3,4的雇员信息,包括雇员编号,姓名,部门名称,薪水,薪水等级
select 雇员编号,姓名,部门名称,薪水,薪水等级 from 表名 where 薪水等级='2' or 薪水等级='3' or 薪水等级='4'