- 1、本文档共6页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据库作业实验六
实验六
实验名称:连接查询
一、实验目的
掌握使用连接的方法从多个表中查询数据。理解内连接、外连接(包括左外连接、右外连接和全外连接)、自身连接的概念和使用。要求学生熟练掌握在FROM子句和在WHERE子句中指定连接条件的这两种方法。
二、实验原理
在查询语句的FROM子句中用以下形式实现各种连接操作:
FROM 表1 [INNER] JOIN 表2 ON 表1.列名=表2.列名 (实现内连接)
FROM 表1 LEFT [OUTER] JOIN 表2 ON 表1.列名=表2.列名 (实现左外连接)
FROM 表1 RIGHT [OUTER] JOIN 表2 ON 表1.列名=表2.列名 (实现右外连接)
FROM 表1 FULL [OUTER] JOIN 表2 ON 表1.列名=表2.列名 (实现全外连接)
FROM 表1 AS 别名1 JOIN 表1 AS 别名2 ON 别名1.列名=别名2.列名 (实现自身连接)
在查询语句的WHERE子句中用以下形式实现各种连接操作:
FROM 表1,表2 WHERE 表1.列名=表2.列名 (实现内连接)
FROM 表1,表2 WHERE 表1.列名*=表2.列名 (实现左外连接)
FROM 表1,表2 WHERE 表1.列名=*表2.列名 (实现右外连接)
FROM 表1 AS 别名1 ,表1 AS 别名2 WHERE 别名1.列名=别名2.列名 (实现自身连接)
三、实验设备
安装有SQL SERVER 2005的计算机。
四、实验示例
检索product 表和sale_item表中数量大于2的相同产品的产品编号、产品名称、数量、单价。
select a.prod_id,a.qty,a.unit_price,b.prod_name
from sale_item as a inner join product as b /*如果改成left join/right join 试分析结果*/
on (a.prod_id=b.pro_id) and a.qty2
order by a.prod_id
2、查找出employee表中住址相同的员工的姓名、性别、职称、薪水、住址。
select a.emp_name,a.sex,a.title,a.salary,a.addr,b.emp_name,b.sex,b.title,b.salary,b.addr
from employee as a inner join employee as b
on (a.emp_no!=b.emp_no) and (a.emp_nameb.emp_name) and (a.addr=b.addr)
3、查找商品名称为14寸显示器商品的销售情况,显示该商品的编号、销售数量、单价和金额
select a.prod_id,qty,unit_price,unit_price*qty totprice
from sale_item a,product b
where a.prod_id=b.prod_id and prod_name=14寸显示器
五、实验内容与步骤
查找出employee表中部门相同且住址相同的女员工的姓名、性别、职称、薪水、住址。
use [company]
go
select distinct a.emp_name,a.sex,a.title,a.salary,a.addr
from employee a,employee b
where a.addr=b.addr and a.dept=b.dept and a.sex=女 and b.sex=女 and a.emp_name!=b.emp_name
检索product 表和sale_item表中相同产品的产品编号、产品名称、数量、单价。
select distinct product.prod_id,product.prod_name,qty,unit_price
from product,sale_item
where sale_item.prod_id=product.prod_id
检索product 表和sale_item表中单价高于2400元的相同产品的产品编号、产品名称、数量、单价。
select distinct product.prod_id,product.prod_name,qty,unit_price
from product,sale_item
where sale_item.prod_id=product.prod_id and sale_item.unit_price 240
文档评论(0)