logo资料库

SQL数据库实验三_简单查询.doc

第1页 / 共9页
第2页 / 共9页
第3页 / 共9页
第4页 / 共9页
第5页 / 共9页
第6页 / 共9页
第7页 / 共9页
第8页 / 共9页
资料共9页,剩余部分请下载后查看
实验三 简单查询(1)解答 实验结果 1. 查询全部职工的基本信息。 SQL 语句: SELECT * FROM Employee 查询结果: 其他: SELECT top 5 * FROM Employee 2.查询员工表中所有职工的部门、职工号、姓名和薪水。 SQL 语句: SELECT department,employeeNo,employeeName, salary FROM Employee 查询结果:
3.查询全体职工的姓名、年龄、所属部门,并且用汉语显示表头信息。 SQL 语句: SELECT employeeName 姓名, year(getdate())-year(birthday) 年龄,department 所 属部门 FROM Employee 查询结果: 问题: SELECT employeeName 姓名,year(getdate())-year(birthday)+1 AS 年 龄,department 所属部门
FROM Employee 4.查询 1973 年出生且为职员的员工信息。 SQL 语句: SELECT * FROM Employee WHERE year(birthday)=1973 AND headShip='职员' 查询结果: 其他: SELECT * FROM Employee WHERE year(birthday)='1973' AND headShip='职员' 5.查询业务科或财务科的职工姓名、性别和所在部门,仅显示前面 5 位职工。 SQL 语句: SELECT TOP 5 employeeName, sex,department FROM Employee WHERE department IN ('业务科','财务科') 查询结果: 其他: SELECT TOP 5 employeeName,sex,department FROM Employee WHERE department='业务科'or department='财务科' 问题: SELECT top 5 employeeName,sex,department FROM Employee
Where department=业务科,财务科 6.查询薪水为 2000 或 4000 的职工编号、姓名、所在部门和薪水。 SQL 语句: SELECT employeeNo,employeeName,department, salary FROM Employee WHERE salary=2000 OR salary=4000 查询结果: 其他: SELECT employeeNo,employeeName,department,salary FROM Employee WHERE salary='2000' OR salary='4000' 7.查询薪水在 3000 ~ 4000 的职工姓名和薪水。 SQL 语句: SELECT employeeName, salary FROM Employee WHERE salary BETWEEN 3000 AND 4000 查询结果: 8.查询薪水不在 3000 ~ 4000 的职工姓名和薪水。 SQL 语句: SELECT employeeName, salary FROM Employee WHERE salary NOT BETWEEN 3000 AND 4000 查询结果:
其他: SELECT employeeName,department,salary FROM Employee where not (salary>=3000 and salary<=4000) SELECT employeeName, salary FROM Employee WHERE salary<3000 OR salary>4000 9.查询所有姓张的职工姓名、所属部门和性别,且性别显示为“男”或“女”。 SQL 语句: SELECT employeeName,department,sex= case sex WHEN 'M' THEN '男' WHEN 'F' THEN '女' ELSE '不详' END FROM Employee WHERE employeeName LIKE '张%' 查询结果:
其他: case select employeeName,department, when sex='M' then '男' when sex='F' then '女' end sex from Employee where employeeName like '张%' 10. 查询姓张且全名为三个汉字的职工姓名。 SQL 语句: SELECT employeeName FROM Employee WHERE employeeName LIKE '张__' 查询结果: 问题: SELECT employeeName FROM Employee WHERE employeeName LIKE '张__' AND employeeName NOT LIKE '张_' 11. 查询既不在业务科也不在财务科的职工姓名、性别和所在部门。 SQL 语句: SELECT employeeName,sex,department FROM Employee WHERE department NOT IN ('业务科','财务科') 查询结果: 其他: select employeeName,sex,department
from Employee where department<>'业务科' and department<>'财务科' 12. 查询 1991 年被雇佣的职工号、姓名、性别、电话号码、出生日期以及年龄, 如果电话号码为空,显示“不详”,出生日期按 yyyy-mm-dd 显示。 SQL 语句: SELECT employeeNo,employeeName,sex, isnull(telephone,'不详') telephone, CONVERT(CHAR(10),birthday,120) birthday,year(getdate())-year(birthday) age FROM Employee WHERE year(hireDate)=1991 查询结果: 其他: select employeeNo,employeeName,sex,telephone=isnull(telephone,'不详'), birthday=convert(char(10),birthday,120),year(getdate())-year(birthday) as age from Employee where year(hiredate)=1991 13. 查询 9 月出生的员工编号、姓名、出生日期、并按出生日期的降序输出。 SQL 语句: SELECT employeeNo,employeeName,birthday FROM Employee WHERE month(birthday)=9 ORDER BY birthday DESC 查询结果: 14. 查询职工工资最高的前 8 个职工编号、职工姓名和工资。
SQL 语句: SELECT TOP 8 employeeNo,employeeName,salary FROM Employee ORDER BY salary DESC 查询结果: 15. 查询职工工资按高低排序的前 10%的职工编号、职工姓名和工资。 SQL 语句: SELECT TOP 10 percent employeeNo,employeeName,salary FROM Employee ORDER BY salary DESC 查询结果: 其他: SELECT top((select count(*) from Employee)/10) employeeNo,employeeName,salary FROM Employee ORDER BY salary DESC 查询结果: 16. 在订单数据库中,根据员工的薪水进行分类显示。(薪水小于 2000 元的,显示 “低收入者”,大于等于 2000 元小于 4000 元的,显示“中等收入者”,大于等于 4000 元的,显示“高收入者”。 SQL 语句: SELECT employeeNo,employeeName,salary,薪水级别=
分享到:
收藏