salary
(
FID int, //记录ID
FName Varchar(10),//员工姓名
Fdate Datetime,//日期
FSalary float //余额
)
表内记录了公司所有员工的薪水发放记录(注:薪水可能是按周发放,也可能是按月发放 按日发放),数据可能跨年。
(1).现要得出名为张三的员工在本年所得薪水总和,请写出sql语句
(2).现要求计算出每个员工的按年,月统计的薪水报表,请写出SQL语句
(3).现要求计算出月薪介于500—800的员工姓名(要求名字不重复,含500和800)
(
FID int, //记录ID
FName Varchar(10),//员工姓名
Fdate Datetime,//日期
FSalary float //余额
)
表内记录了公司所有员工的薪水发放记录(注:薪水可能是按周发放,也可能是按月发放 按日发放),数据可能跨年。
(1).现要得出名为张三的员工在本年所得薪水总和,请写出sql语句
(2).现要求计算出每个员工的按年,月统计的薪水报表,请写出SQL语句
(3).现要求计算出月薪介于500—800的员工姓名(要求名字不重复,含500和800)
解决方案 »
- 在windows下的命令窗口中sqlldr、sqlplus命令都不认了?请教各位大侠
- 高分求解基础问题
- oracle数据分页查询优化
- 查询多字段时,如何只对一个字段分组?
- 执行下面的procedure时提示我“ORA-01031:权限不足”,应该如何改写下面的procedure呢?
- Oracle的数据群集
- 解决不了我就精神分裂:redhat9下安装oracle8.1.7安装界面文字不能显示。
- 初學XML,請問怎麼跟ORACLE連接,用XMLSPY?它支持Oracle8i麼?
- delphi中调用oracle函数问题
- Oracle统计求和问题
- [收集贴]本贴收集SQL常用的存储过程和自定义函数,大家有的话发出来晒晒!
- [笔试问题]这两个表,内联结果有几条记录?
--(1)
select max(FSalary)-min(FSalary) 薪水总和
from salary
where FName='张三' and trunc(Fdate)=trunc(sysdate)
group by trunc(Fdate);--(2)
--按年:
select FName 员工姓名,to_char(trunc(Fdate),'yyyy')||'年' 年份,max(FSalary)-min(FSalary) 薪水
from salary
group by FName,trunc(Fdate);
--按月:
select FName 员工姓名,to_char(trunc(Fdate,'mm'),'yyyy-mm')||'月' 月份,max(FSalary)-min(FSalary) 薪水
from salary
group by FName,trunc(Fdate,'mm');--(3)
select distinct 员工姓名 from (
select FName 员工姓名,to_char(trunc(Fdate,'mm'),'yyyy-mm')||'月' 月份,max(FSalary)-min(FSalary) 薪水
from salary
group by FName,trunc(Fdate,'mm')
)
where 薪水 between 500 and 800;
(1).现要得出名为张三的员工在本年所得薪水总和,请写出sql语句
select sum(FSalary) from salary where FName='张三' and Fdate between to_date('20100101','yyyymmdd') and to_date('20101231','yyyymmdd');(2).现要求计算出每个员工的按年,月统计的薪水报表,请写出SQL语句
select FName,to_char(Fdate,'yyyymm'),sum(FSalary)
from salary
group by FName,to_char(Fdate,'yyyymm')(3).现要求计算出月薪介于500—800的员工姓名(要求名字不重复,含500和800)select distinct FName
from(
select FName,to_char(Fdate,'yyyymm'),sum(FSalary) as mFSalary
from salary
group by FName,to_char(Fdate,'yyyymm')
)
where mFSalary between 500 and 800
'截至2010-10-07 08:11:25 用户结帖率0.00% 当您的问题得到解答后请及时结贴.
http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
http://topic.csdn.net/u/20100428/09/BC9E0908-F250-42A6-8765-B50A82FE186A.html
http://topic.csdn.net/u/20100626/09/f35a4763-4b59-49c3-8061-d48fdbc29561.html8、如何给分和结贴?
http://community.csdn.net/Help/HelpCenter.htm#结帖