0
点赞
收藏
分享

微信扫一扫

SQL练习二:查询

sql

在线练习: SQL Fiddle

 员工表(Employee)

ENUMBERENAMEESEXEEMAILEPHONEEWAGEJNUMBERD_NUMBER
0001陈火旺huo@163.com0411-54684521120020013001
0002陈火旺huo@163.com0411-54644521150020083002
0003赵克佳zkj@163.com0411-54684891240020073003

 部门表(Department)

D_NUMBERDNAMEDLOCATION
3001计算机系二教学楼
3002机电系机电楼
3003图书馆图书馆

 职位表(Job)

JNUMBERJNAMEJDESCRIPTION
2001教师负责教学科研工作
2004保安负责安全工作
2007实验教师负责实验室管理维护工作
2008图书管理员负责图书馆的管理

 题目及代码参考:

1*查询出所有部门的情况信息。

SELECT *
FROM Department;

2*检索部门号码是3002的员工的姓名、工资。

SELECT Ename,Ewage
FROM Employee,Department
WHERE Employee.D_number=Department.D_number AND Employee.D_number='3002';

3*检索出姓赵的员工的信息。

SELECT *
FROM Employee
WHERE Ename LIKE '赵%';

4*检索出所有工资大于1000,小于2000的员工的所有信息,包括他们的部门名称

SELECT Employee.*,Department.Dname
FROM Employee,Department
WHERE Employee.D_number=Department.D_number AND Ewage BETWEEN 1000 AND 2000;

5*检索出员工的名字中有“火”并且工资小于2000的员工的信息。

SELECT *
FROM Employee
WHERE Ewage < 2000 AND Ename LIKE '%火%';

6*必填检索出所有员工的信息,根据工资升序排列。

SELECT *
FROM Employee
ORDER BY Ewage ASC;

07*对员工信息,检索出各个部门的平均工资和总人数。

SELECT D_number,avg(Ewage),count(*)
FROM Employee
GROUP BY D_number;

8*对员工信息,检索出如下列:员工编号、员工姓名、职位名称、部门名称。

SELECT Enumber,Ename,Jname,Dname
FROM Employee,Department,Job
WHERE Employee.Jnumber=Job.Jnumber AND Employee.D_number=Department.D_number;

9*检索出比员工编号是0002的员工工资高的员工的姓名。

SELECT Ename
FROM Employee
WHERE Ewage >
(SELECT Ewage FROM Employee WHERE Enumber='0002');

结果参考:

 

举报

相关推荐

0 条评论