vf7sql连接和嵌套文档格式.docx
- 文档编号:17880387
- 上传时间:2022-12-11
- 格式:DOCX
- 页数:4
- 大小:16.37KB
vf7sql连接和嵌套文档格式.docx
《vf7sql连接和嵌套文档格式.docx》由会员分享,可在线阅读,更多相关《vf7sql连接和嵌套文档格式.docx(4页珍藏版)》请在冰豆网上搜索。
1220
检索命令的from后的多个关系之间肯定有一种联系(通过共同字段体现)
当from之后的多个关系中含有相同的属性名时,这时必须用关系前缀指明属性所属的关系,如职工.仓库号.前面是关系名后面是属性名注意不是,
基于两个表连接查询语法规则:
Select字段1,字段2…from表1,表2where表1.共同字段=表2.共同字段and题目给定的条件
思路把要检索的字段和条件字段都拿出来分析然后确定要检索的字段出自什么表再确定条件字段出自什么表最后确定用简单,连接还是嵌套
学生练习:
根据供应商和订购单关系查找出订购日期为2001-5-25日的职工号,和供应商名称
订购日期={^2001-5-25}
select职工号,供应商名from订购单,供应商where;
订购单.供应商号=供应商.供应商号and订购日期={^2001-5-25}
例题2:
根据订购单和供应商表找出公司地址在北京和西安的供应商号,供应商名和与他们对应的订购单号
select订购单.供应商号,供应商名,订购单号from订购单,供应商;
where订购单.供应商号=供应商.供应商号and(地址="
北京"
or地址=”上海”)
从大的方面来
看连接条件(有多个时用括号括起来)与题目给定的条件(有多个时用括号括起来)用and连接
根据职工和仓库关系检索出城市为北京以及上海的仓库的面积和职工号?
不进行讲解例题3找出与地址在北京和西安的供应商对应的订购单号和签该订购单的员工姓名
Select订购单号,员工姓名from职工,订购单,供应商where(职工.职工号=订购单.职工号and订购单.供应商号=供应商.供应商号)and(地址="
or地址="
上海"
)
不进行讲解学生练习:
找出选修了课程名为物理的学生的姓名和该门课程的成绩
3嵌套查询:
特点:
什么时候用嵌套所要检索的字段出自同一个关系,但相关的条件字段涉及其他关系,这时使用嵌套查询
例题1:
求出至少有一个职工的工资为1250元的仓库的信息?
1250元或者1230元
Select*from仓库where仓库号in(select仓库号from职工where工资=1250)
含有两个select—from—where也就是两个简单查询
内层查询实际上是一个范围检索到的仓库值就是wh1wh2
等价查询命令是:
Select*from仓库where仓库号in(“WH1”,”WH2”)
in相当于集合论中的属于运算符
基于两个表的嵌套查询语法规则:
select字段1,字段2...from要检索的字段所在的表where共同字段in(select共同字段from条件字段所在的表where题目给定的条件)
根据订购单和供应商关系查询出2001-06-23日签订订购单的供应商名以及地址
例题2查询所有职工的工资都多于1210的仓库的信息
Select*from仓库where仓库号in(select仓库号from职工where工资>
1210)错误
也就是没有一个职工的工资少于等于1210的仓库的信息
至少有一个职工的工资小于等于1210的仓库号范围
没有一个职工的工资小于等于1210的仓库号的范围
1.仓库有职工
2.仓库没职工
正确的表述为:
没有一个职工的工资少于等于1210的仓库的信息,且该仓库至少要有一名职工
Select*from仓库where仓库号notin(select仓库号from职工where工资<
=1210)and仓库号in(select仓库号from职工)
not否定运算符
查询所有职工的工资都少于1250的仓库的信息
例题3找出和职工E4挣同样工资的所有职工的职工号?
和E4或E3
select工资from职工where职工号=”E4”
select职工号from职工where工资=(select工资from职工where职工号=”E4”)
=后面只能跟一个值
In后面可以跟多个值的范围也能跟一个值
找出和职工E4在同一仓库的所有职工的职工号
总练习:
根据订购单和供应商关系查询出供应商名为“华通电子公司”和”607厂”的订购单号和订购日期?
用嵌套查询做的题目也可以用连接查询来做但可能结果有重复需要用distinct消除重复值
例题1检索出至少有一个职工的工资大于1210的仓库所在的城市
Select城市from仓库where仓库号in(select仓库号from职工where工资>
1210)
Selectdistinct城市from仓库,职工where仓库.仓库号=职工.仓库号and工资>
1210
1220)
不进行讲解例题2检索出签订了订购单号为OR76的订单的职工所在的城市
Select城市from仓库where仓库号in(select仓库号from职工where职工号in(select职工号from订购单where订购单号=”OR76”))
Select城市from订购单,仓库,职工where(订购单.职工号=职工.职工号and仓库.仓库号=职工.仓库号)and订购单号=”OR76”
select城市from仓库,职工,订购单where(订购单.职工号=职工.职工号and仓库.仓库号=职工.仓库号)and订购单号="
OR76"
不进行讲解例题3检索出地址为北京且已经和城市在北京的仓库里工作的职工签订了订购单的供应商名(书上137)
当检索的字段和条件均出自一个关系的时候用简单查询
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vf7sql 连接 嵌套
![提示](https://static.bdocx.com/images/bang_tan.gif)