文档详情

第6次课_SQL更新.ppt

发布:2017-04-25约5.23千字共73页下载文档
文本预览下载声明
数据库技术与应用;数据查询 ;集合查询;集合查询(续);集合查询(续);集合查询(续);集合查询(续);集合查询(续);数据查询 ;连接查询 ;连接查询:例子;连接操作的执行过程;排序合并法(SORT-MERGE);索引连接法(INDEX-JOIN);连接查询(续);一、等值与非等值连接查询 ;等值与非等值连接查询(续);连接查询(续);二、自身连接 ;自身连接(续);连接查询(续);三、外连接;外连接(续) ;连接查询(续);四、复合条件连接;数据查询 ;嵌套查询;嵌套查询求解方法; 相关子查询和C语言中的常见循环嵌套类似: for (i=0;i9;I++) {for (j=0;j99;j++) { j=f(i); …… } };嵌套查询;一、带有IN谓词的子查询;带有IN谓词的子查询(续);带有IN谓词的子查询(续);带有IN谓词的子查询(续);带有IN谓词的子查询(续);嵌套查询;二、带有比较运算符的子查询;带有比较运算符的子查询(续);带有比较运算符的子查询(续);带有比较运算符的子查询(续);带有比较运算符的子查询(续);带有比较运算符的子查询(续);嵌套查询;三、带有ANY(SOME)或ALL谓词的子查询 ;带有ANY(SOME)或ALL谓词的子查询 (续);带有ANY(SOME)或ALL谓词的子查询 (续);带有ANY(SOME)或ALL谓词的子查询 (续);带有ANY(SOME)或ALL谓词的子查询 (续);带有ANY(SOME)或ALL谓词的子查询 (续);带有ANY(SOME)或ALL谓词的子查询 (续);带有ANY(SOME)或ALL谓词的子查询 (续);例子:银行客户管理;找出在银行中同时有存款和贷款账户的客户(分别用IN和EXIST谓词完成) 找出那些总资产至少比位于Brooklyn 的某一家支行要多的支行名字(用ANY谓词完成) 找出平均贷款余额最高的分行名字;找出在银行中同时有存款和贷款账户的客户 select distinct customer-name from borrower where customer-name in (select customer-name from depositor) select distinct customer-name from borrower where exists (select * from depositor where depositor. customer-name = borrower. customer-name);找出那些总资产至少比位于Brooklyn 的某一家支行要多的支行名字 select branch-name from branch where assets any (select assets from branch where branch-city=‘Brooklyn’) ;找出平均贷款余额最高的分行名字 select branch-name from account group by branch-name having avg(balance) = all(select avg(balance)) from account group by branch-name ;嵌套查询;带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);带有EXISTS谓词的子查询(续);找出在Brooklyn所有分行都有存款账户的客户;找出在Brooklyn所有分行都有存款账户的客户 不存在这样的Brooklyn的分行,客户在该分行没有存款账户 select distinct customer-name from customer where not exi
显示全部
相似文档