数据库实验:SQL查询操作详解

需积分: 9 6 下载量 200 浏览量 更新于2024-09-20 1 收藏 1.22MB DOC 举报
"本实验教程基于《数据库系统原理与设计》,涵盖了多个关于SQL查询的实例,旨在帮助学习者掌握如何利用SQL语句进行数据检索。实验内容包括:查询特定部门员工信息,模糊查询客户信息,精确匹配员工姓名,处理性别显示,筛选特定条件的员工和订单,以及找出高价值订单和客户。" 在实验一中,学习者将接触到以下关键的SQL知识点: 1. **基本查询**:使用`SELECT`语句从数据库中选取指定列的数据。例如,查询所有业务部门的员工的姓名、职称和薪水,可以通过`SELECT employeeName, headShip, salary FROM Employee WHERE department = '业务科'`实现。 2. **模糊查询**:`LIKE`操作符用于进行包含特定模式的字符串匹配。如查询名字中含有“有限”的客户,使用`WHERE customerName LIKE '%有限%'`。 3. **精确匹配**:`LIKE`配合通配符可以进行精确匹配,如查询姓“王”且姓名末尾是“成”的员工,使用`WHERE employeeName LIKE '王%成'`。 4. **条件组合**:通过`OR`和`AND`操作符可以组合多个条件。例如,查询住址包含“上海”或“南昌”的女性员工,需要先筛选出女性员工,然后使用`WHERE address LIKE '%上海%' OR address LIKE '%南昌%'`。 5. **处理性别显示**:使用`CASE`语句根据条件返回不同的值,如将性别字段转换为“男”和“女”,`CASE sex WHEN 'M' THEN '男' WHEN 'F' THEN '女' END AS sex`。 6. **数值比较**:`WHERE`子句可以用于数值比较,例如在`OrderMaster`表中找出金额大于等于5000的订单,使用`WHERE orderSum >= 5000`。 7. **分组与排序**:`ORDER BY`用于对查询结果进行排序,如选取订单金额最高的前10%,使用`SELECT TOP 10 PERCENT * FROM OrderMaster ORDER BY orderSum DESC`。 8. **子查询**:嵌套`SELECT`语句可以创建子查询,如找出职务为“职员”或“科长”的女性员工,首先筛选出女性员工,然后在子查询结果中进一步过滤。 9. **范围查询**:使用`BETWEEN`操作符可以选取指定范围内的数据,虽然例子中没有使用,但可以类比理解为如`WHERE customerNo BETWEEN 'C20050001' AND 'C20050004'`。 通过这些实例,学习者可以深入了解SQL语言的灵活性和实用性,提高数据操作和分析的能力。