【SQL实验报告主要知识点】 本实验报告主要涵盖了SQL(Structured Query Language)的查询语句,涉及到了多种查询技巧和操作,对于理解和应用SQL语言进行数据检索具有重要意义。 1. **基本查询**: - 查询所有业务部门的员工信息,通过`WHERE`子句筛选特定部门。 ```sql SELECT employeeName2707, headShip2707, salary2707 FROM Employee2707 WHERE department2707='业务科' ``` 2. **模糊查询**: - 使用`LIKE`关键字查找名字中包含特定模式的记录,例如查询名字中含有“有限”的客户。 ```sql SELECT customerName2707, address2707 FROM Customer2707 WHERE customerName2707 LIKE '%有限%' ``` 3. **组合条件查询**: - 使用`AND`操作符结合`LIKE`查询姓“王”且姓名末尾是“成”的员工。 ```sql SELECT * FROM Employee2707 WHERE employeeName2707 LIKE '王%成' ``` 4. **CASE语句**: - 使用`CASE`表达式根据性别字段转换显示结果,将“M”转换为“男”,“f”转换为“女”。 ```sql SELECT employeeName2707, department2707, headShip2707, address2707, CASE sex2707 WHEN 'M' THEN '男' WHEN 'f' THEN '女' END AS sex2707 FROM Employee2707 WHERE sex2707 = 'f' AND (address2707 LIKE '%上海%' OR address2707 LIKE '%南昌%') ``` 5. **数学运算**: - 利用乘法运算符`*`计算销售金额,筛选出金额大于等于10000元的订单。 ```sql SELECT * FROM OrderDetail2707 WHERE (quantity2707 * price2707) >= 10000 ``` 6. **Top与ties子句**: - 结合`TOP`和`WITH TIES`以及`ORDER BY`子句选取订单金额最高的前10%的订单。 ```sql SELECT TOP 10 WITH TIES (quantity2707 * price2707) AS orderAmount, orderNo2707, ProductNo2707, quantity2707, price2707 FROM OrderDetail2707 ORDER BY (quantity2707 * price2707) DESC ``` 7. **逻辑运算符OR**: - 使用`OR`连接两个条件,查询职务为“职员”或“科长”的女性员工。 ```sql SELECT * FROM Employee2707 WHERE sex2707 = 'f' AND (headShip2707 LIKE '% 职员%' OR headShip2707 LIKE '%科长%') ``` 8. **多表联合查询**: - 使用`JOIN`操作查询订单金额高于8000的所有客户编号。 ```sql SELECT DISTINCT om.customerNo2707 FROM OrderMaster2707 om, OrderDetail2707 od WHERE od.orderNo2707 = om.orderNo2707 AND (od.quantity2707 * od.price2707) >= 8000 ``` 9. **BETWEEN运算符**: - 利用`BETWEEN`查询编号在指定范围内的客户信息。 ```sql SELECT customerNo2707, customerName2707, address2707 FROM Customer2707 WHERE customerNo2707 BETWEEN 'C%0001' AND 'C%0004' ``` 10. **自连接查询**: - 自连接`Employee2707`表找出同一天入职的员工。 ```sql SELECT a.* FROM Employee2707 a, Employee2707 b WHERE a.employeeNo2707 != b.employeeNo2707 AND a.hireDate2707 = b.hireDate2707 ORDER BY a.hireDate2707 ``` 11. **ANY子句**: - 使用`ANY`关键字比较订单金额,查询大于某个特定员工在特定日期所接订单金额的所有订单。 ```sql SELECT * FROM OrderMaster2707 WHERE orderSum2707 > ANY (SELECT orderSum2707 FROM OrderMaster2707 WHERE salerNo2707 = 'E2005002' AND orderDate2707 = '2008-1-9') ``` 12. **IN子句**: - 利用`IN`操作符查找同时购买过特定商品的客户编号、订单编号和订单金额。 ```sql SELECT c.customerNo2707, od.orderNo2707, om.orderSum2707 FROM Customer2707 c, OrderMaster2707 om, OrderDetail2707 od WHERE c.customerNo2707 = od.customerNo2707 AND od.orderNo2707 = om.orderNo2707 AND od.ProductNo2707 IN ('商品编号1', '商品编号2') GROUP BY c.customerNo2707, od.orderNo2707, om.orderSum2707 HAVING COUNT(DISTINCT od.ProductNo2707) = 2 ``` 以上就是SQL实验报告中涉及的主要知识点,包括基本的查询、条件过滤、数学运算、多表操作、逻辑运算、排序、自连接、范围查询以及集合操作等,这些都是SQL语言的核心功能,对于数据库管理和数据分析工作至关重要。通过这些实验,可以加深对SQL的理解并提高实际操作能力。
- 粉丝: 8
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助