⑴ 用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如何实现总数的统计,例如某一个收费员一个月收的总户数总钱数胡乱找个例子做多谢!!!
--计算收费员当月的总数
select 收费员,sum(钱) as 总数
from 收费表
where convert(varchar(10),收费日期,121)=convert(varchar(10),getdata(),121)
group by 收费员
⑶ 近3年收入求和的sql语句怎么写以月为单位
select sum(month) from tableA where month > 'xx' and month <'xx'
⑷ 请编写一条SQL语句完成;查询所有员工的平均月薪,输出平均月薪emp_avg
select avg(salary) emp_avg from
emp_salary
emp_salary为工资表名称
⑸ 如何用SQL语句查询出业务员每个月的业绩和总计
IFOBJECT_ID('saleinfo')ISNOTNULLDROPTABLEsaleinfo
--创建模拟表
createtablesaleinfo(
idintidentity(1,1)primarykey,
salesmannvarchar(50)null,
salemonthnvarchar(50)null,
achievementint
)
--载入模拟数据
insertintosaleinfo(salesman,salemonth,achievement)values('A','1月5日',10)
insertintosaleinfo(salesman,salemonth,achievement)values('A','1月7日',20)
insertintosaleinfo(salesman,salemonth,achievement)values('A','2月4日',30)
insertintosaleinfo(salesman,salemonth,achievement)values('A','2月7日',40)
insertintosaleinfo(salesman,salemonth,achievement)values('A','3月2日',50)
insertintosaleinfo(salesman,salemonth,achievement)values('A','3月9日',60)
insertintosaleinfo(salesman,salemonth,achievement)values('B','1月5日',70)
insertintosaleinfo(salesman,salemonth,achievement)values('B','1月7日',80)
insertintosaleinfo(salesman,salemonth,achievement)values('B','2月4日',90)
insertintosaleinfo(salesman,salemonth,achievement)values('B','2月7日',10)
insertintosaleinfo(salesman,salemonth,achievement)values('B','3月2日',20)
insertintosaleinfo(salesman,salemonth,achievement)values('B','3月9日',30)
insertintosaleinfo(salesman,salemonth,achievement)values('C','1月5日',40)
insertintosaleinfo(salesman,salemonth,achievement)values('C','1月7日',50)
insertintosaleinfo(salesman,salemonth,achievement)values('C','2月4日',60)
insertintosaleinfo(salesman,salemonth,achievement)values('C','2月7日',70)
insertintosaleinfo(salesman,salemonth,achievement)values('C','3月2日',80)
insertintosaleinfo(salesman,salemonth,achievement)values('C','3月9日',90)
--显示数据
selectsalesmanas业务员,salemonthas月份,achievementas业绩fromsaleinfo
declare@sqlvarchar(8000)
set@sql='selectsalesmanas业务员'
select@sql=@sql+',sum(caseleft(salemonth,2)when'''+left(salemonth,2)+'''thenachievementelse0end)['+left(salemonth,2)+']'
from(selectdistinctleft(salemonth,2)assalemonthfromsaleinfo)asa
set@sql=@sql+',sum(achievement)as业绩fromsaleinfogroupbysalesman'
exec(@sql)
⑹ 怎么利用sql根据流水账生成月报表
您好:
主要语句如下:
SELECTSUM(收入)收入合计
,SUM(支出)支出合计
FROM流水表
WHERE时间<='本月期初时间'
AND时间>'下月期初时间'
详细的需要根据具体表结构和需求来定。。。