【SQL 查询】是数据库操作的核心技能,用于从数据库中提取所需信息。本实验主要通过 Microsoft SQL Server 2005 数据库管理系统,采用 SQL 语言进行一系列查询操作,旨在提升对 SQL 定义子语言(DDL)和操纵子语言(DML)的熟练度。 1. **基础查询**(2-1):`SELECT * FROM person;` 这个基本的 SQL 查询语句用于获取 `person` 表中的所有记录和字段。 2. **条件查询**(2-2): - ① `SELECT DISTINCT prof FROM person;` 通过 `DISTINCT` 关键字去除重复的职称,返回表中所有不同的职称。 - ② `SELECT * FROM person WHERE prof='中级';` 选择职称为“中级”的所有员工记录。 - ③ `SELECT * FROM person WHERE prof='高级' AND Sex='男';` 查询职称为“高级”且性别为“男”的员工信息。 - ④ `SELECT * FROM person WHERE p_name='王云' OR p_name='谢志文' OR p_name='罗向东';` 通过 `OR` 运算符选取姓名为指定值的员工。 3. **排序查询**(2-3):`SELECT P_no, Fact FROM salary WHERE p_no BETWEEN '000003' AND '000008' ORDER BY Fact;` 使用 `BETWEEN` 操作符筛选工号在指定范围内的员工,然后根据 `Fact` 字段的值进行升序排序。 4. **计算查询**(2-4):`SELECT Base * 2 + Bonus * 1.5 AS newFact FROM Salary Where P_no = '000002';` 此查询将工号为 `000002` 员工的基本工资和奖金分别乘以倍数,然后相加得到新的实发工资。 5. **聚合函数**(2-5):`SELECT deptno, SUM(Fact) AS sumFact FROM salary, person WHERE person.p_no=salary.p_no GROUP BY deptno;` 使用 `SUM()` 函数计算每个部门的实发工资总和。 6. **分组与过滤**(2-6):`SELECT d.Dname, AVG(s.bonus) as avgBonus FROM dept d, person p, salary s WHERE d.deptno = p.deptno AND p.p_no = s.p_no and s.month=1 GROUP BY d.dname HAVING AVG(s.bonus) > 200;` 查询1月份奖金平均数大于200元的部门,并按平均奖金降序排列。 7. **连接查询**(2-7):`SELECT p.*, d.dname FROM person p, dept d WHERE p.deptno=d.deptno AND d.dname='人事部';` 通过 `INNER JOIN` 连接 `person` 和 `dept` 表,获取人事部所有员工的详细信息。 8. **条件筛选**(2-8):`SELECT * FROM person WHERE prof='中级';` 查询职称为“中级”的所有员工记录。 9. **多字段查询**(2-9):`SELECT p.p_no, p.p_name, s.base, s.bonus FROM person p, salary s WHERE p.p_no = s.p_no AND s.month=1;` 联合 `person` 和 `salary` 表,获取每个员工1月份的工资和奖金。 10. **子查询**(2-10):`SELECT * FROM person WHERE p_no in (SELECT p_no FROM Salary WHERE fact > (SELECT fact FROM salary WHERE p_no='000005'));` 选择实发工资高于工号为 `000005` 员工的员工信息。 11. **比较查询**(2-11):`SELECT p_no FROM salary WHERE fact > (SELECT AVG(fact) FROM salary WHERE deptno='0003');` 查找实发工资高于部门编号为 `0003` 所有员工平均实发工资的员工工号。 12. **并集查询**(2-13):`UNION` 操作可以将两个或更多 `SELECT` 语句的结果合并成一个结果集,但通常未在此实验中给出具体示例。 这些 SQL 查询涵盖了数据库操作的基本元素,包括数据选择、条件过滤、排序、聚合、连接、子查询等,对于理解 SQL 语言的使用和数据库管理具有重要意义。通过这样的实验,学生能够掌握 SQL 查询的实用技巧,并将其应用于实际的数据分析和管理任务中。
剩余7页未读,继续阅读
- 粉丝: 0
- 资源: 2
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助