欢迎来到天天文库
浏览记录
ID:49395444
大小:306.50 KB
页数:34页
时间:2020-02-06
《数据修改、视图.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数据库原理与应用11–SQL语言⑦数据修改、视图等郑捷嵌套查询(子查询)在一个查询中,嵌入另外一个查询,作为外查询的依据或者参与者根据内外查询的结果和关系,分为相关与不相关子查询单值子查询、列表子查询子表查询存在查询数据库原理与应用郑捷2数据库原理与应用2郑捷lzj@fjnu.edu.cnwww.lzj.name子查询ANY、ALL谓词EXISTS子查询子表查询UNION查询综合使用数据库原理与应用3郑捷lzj@fjnu.edu.cnwww.lzj.nameANY(SOME)、ALL谓词对于返回列表的子查询,通常使用IN谓词配合进行查询但是有时候可能希
2、望对其每个元素进行判断数据库原理与应用4郑捷lzj@fjnu.edu.cnwww.lzj.nameANY(SOME)、ALL谓词ANY(SOME)和ALL谓词对列表中的内容进行了修饰,使得之前的比较运算有可能进行。ANY要求比较运算与任一个元素满足条件即可ALL要求比较运算与全部元素均满足条件才行SOME是ANY的同义词数据库原理与应用5郑捷lzj@fjnu.edu.cnwww.lzj.name比较运算等价转换关系打叉表示在大部分情况下,这个比较是没有意义的注意:以上等价条件是在子查询有结果的情况下。当子查询没有结果,则情况比较特殊=<><>ANYIN
3、×MINALL×NOTINMAX数据库原理与应用6郑捷lzj@fjnu.edu.cnwww.lzj.nameEXISTS存在子查询有些场合下,我们只需要知道一个查询有没有可返回的记录,而不关心具体内容EXISTS用于判断子查询是否有返回内容。如果有,则整个式子为真,否则为假。直接作为逻辑条件但是返回数量多少、什么内容,一概忽略数据库原理与应用7郑捷lzj@fjnu.edu.cnwww.lzj.nameEXISTS子查询性质EXISTS子查询基本上都是相关子查询,一般用SELECT*方式,因为我们不关心查到什么重点在于:如何构造子查询
4、的WHERE、HAVING字句在不考虑效率、可读性的情况下,EXISTS子查询可以等价实现几乎所有的查询数据库原理与应用8郑捷lzj@fjnu.edu.cnwww.lzj.name子表子查询在FROM字句中,被查询的对象可以是另外一个查询结果,叫做子表子查询子表子查询是将子查询的结果作为外查询的数据源数据库原理与应用9郑捷lzj@fjnu.edu.cnwww.lzj.name子表子查询要求对于子表子查询,只能是不相关子查询子查询作为表参与外查询,必须有别名!!往往子查询被作为参与连接的一个部分数据库原理与应用10郑捷lzj@fjnu.edu.cnwww
5、.lzj.nameUNION查询UNION查询实际上就是将两个查询的结果进行“并”运算要求其连接的两个查询结果集在列属性上一一对应例:找出年龄未知的工程师,以及男性工程师更多情况下,UNION连接的是无法用相同结构进行查询的几个语句UNION会自动将重复的元组删去,可以用UNIONALL来保留重复记录数据库原理与应用11郑捷lzj@fjnu.edu.cnwww.lzj.name数据修改、视图等数据的更改插入、删除、更新视图概念和作用创建和使用视图的限制索引、约束等的额外说明数据库原理与应用12郑捷lzj@fjnu.edu.cnwww.lzj.name数
6、据更新有三种操作插入:添加新记录删除:删除原有记录更新:修改原记录中指定字段的值数据更新只影响记录,不影响表结构,同时新数据必须满足约束要求数据库原理与应用13郑捷lzj@fjnu.edu.cnwww.lzj.name插入语句INSERT[INTO]<表>[(<字段列表>)]VALUES(<值列表>)INSERT[INTO]<表>[(<字段列表>)]SELECT字句数据库原理与应用14郑捷lzj@fjnu.edu.cnwww.lzj.name插入数据说明插入的新记录必须满足约束要求如果省略字段列表,则系统自动默认按照字段顺序插入值列表必须和字段列表
7、一一对应当某个字段没有给出值时,按照字段默认值进行第二种语法将子查询的结果插入表中,可以同时插入多条记录,但是同样必须满足上述要求数据库原理与应用15郑捷lzj@fjnu.edu.cnwww.lzj.name插入案例添加新公司添加新员工安排人员参加项目新建一个表,记录员工的姓名、公司名称和参加的项目数,查询出结果并插入新表数据库原理与应用16郑捷lzj@fjnu.edu.cnwww.lzj.nameSELECTINTO语句SELECT<字段>INTO<新表名>FROM......该语句将查询到的结果作为一个新表数据库原理与应用17郑捷lzj@fjn
8、u.edu.cnwww.lzj.name删除DELETE[FROM]<表>[WHERE<条件>
此文档下载收益归作者所有