❶ 查询每个部门总工资,和每个部门的平均工资的sql语句
以oracle中默认scott用户下的dept表和emp表为例:
两个表数据分别如下:
dept表:
部分函数说明:
sum为求和函数,将要求和的列sum(列名)
avg为求平均值函数,将要求平均值的列avg(列名)
nvl为如果未空则置空值为其他数据的函数,nvl(为空的列,将空值置成的其他值)
round为四舍五入函数,round(列名,保留小数位数)
❷ 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
--SQL如下衫侍:
SELECT
A.EMPLOYEE_ID --员工ID
,A.EMPLOYEE_NAME --员工姓名
,SUM(DISTINCT A.SALARY) + SUM(COALESCE(B.SALARY,0)) --本人工资+所有下属工资
FROM EMPLOYEE A --员工表(上码塌滚级)
LEFT JOIN EMPLOYEE B --员工表(下属)迟余
ON A.EMPLOYEE_ID = B.SUPERIOR_ID --员工ID=下属的上级ID
GROUP BY A.EMPLOYEE_ID
;
❹ 查询同一个员工表中工资相同的员工的详细信息的sql语句怎么写
select * from emp e where (select count (*) from emp where sal=e.sal ) >1;我也是个新手,不能保证正确,你试试。不行就在e.sal后面group by sal
❺ 如何编写一条sql语句“查询每个员工的工资都大于5000的部门”
1、select * from 部门
2、吵猜轮where not exists (select * from 员工 where 员工.部门号=部门.部门号 and 工资 <= 5000)
❻ 用SQL语句怎么查询最高工资和最低工资的人
1、首先查出最低工资和最高工资,要考虑到并列最高和最低的情况
2、使用最高工资和最低工资作为条件关联工资表,获得人的ID
3、使用人的ID关联用户表,查出人的信息
❼ 如何用SQL语言实现计算人员工资总额及人员人数
计算工资总额:
这是查询:sql=“selest
sum(工资)
as
总共工资
from
工资表”
这是显示:rs(“总共工资”)
计算员工总数:
这是查询:sql=“selest
count(员工姓名)
as
总员工数
from
员工“
显示同上:rs(”总员工数“)
注:以上语句中的”总工资数“”总员工数“为自定义字段,数据表中没有
只是临时建立的一个字段
追分的话你看着给
golongfly
你没用AS转换
怎么显示出来啊?
❽ 用SQL语句怎样查年薪和月薪
这个问题,首先要有个思路:
1 求年薪和月薪,那么首先要确定,年薪和月薪是怎么算的,
根据你的描述,发薪水没有固定日期,比如说这个月发了4次薪水,那么这个人的这个月的月薪水就是这四次的钱加起来,这样算的话,月薪就是每个月单独计算特有的,但是你说的这个月薪是年平均的还是按月单独算呢?
假设是年平均的吧:
select t1.staff_name, sum(t1.staff_salary)/12 as 月薪 from salary t1
where t1.salary_date>to_date('2010-01-01','YYYY-MM_DD')
and t1.salary_date<to_date('2010-12-31','YYYY-MM_DD')
group by t1.staff_name
年薪:
select t1.staff_name, sum(t1.staff_salary) as 年薪 from salary t1
where t1.salary_date>to_date('2010-01-01','YYYY-MM_DD')
and t1.salary_date<to_date('2010-12-31','YYYY-MM_DD')
group by t1.staff_name
月薪在500-800之间的员工姓名,这个不用我写了吧。
当然,单独算月薪也是可以的,需要的话给我留言~
❾ sql查询所有男员工在2014-1-28的工资信息要求输出员工姓名及所以工资信息
select 姓名,员工编号,基本工资,社保公积金,奖金
from 员工表
where 性别=‘男’ and 日期=‘2014-01-28’