欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    《SQL的数据查询》PPT课件.ppt

    • 资源ID:26732520       资源大小:633.50KB        全文页数:43页
    • 资源格式: PPT        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《SQL的数据查询》PPT课件.ppt

    一个问题n2006年6月,举世瞩目的第18届世界杯在德国举行,某网站为了方便球迷查询,在自己的网站上设立了世界杯信息查询系统。该系统的一部分要求为:一名球员可以参加多场比赛,每场比赛有多名球员参加。 概念模型 n请你为该系统的这一部分设计一个ER模型,画出ER图。要求:“球员”的属性有:姓名,代表国,号码,年龄,位置“比赛”的属性有:比赛编号,比赛甲方,比赛乙方,比赛类型在联系中反映出球员参加比赛的出场时间,进球数 概念模型ER图球员姓名代表国号码年龄位置比赛编号甲方乙方类型进球数出场时间参加mn概念模型关系数据模型球员关系player(nation,number,name,age,position)主码: (nation,number)概念模型关系数据模型想一想,如果只是number作为主码可以吗?概念模型关系数据模型不可以,因为不同国家队中有相同的号码概念模型关系数据模型比赛关系match(matchid,match_a,match_b,matchtype)主码: matchid概念模型关系数据模型player(nation,number,name,age,position)match(matchid,match_a,match_b,matchtype)matchidnation,numberjoin( , , )time,goalPlayerPlayer的主码的主码matchmatch的主码的主码JoinJoin自己的属自己的属性性SQL语言功能动词数据查询数据定义数据更新数据控制SELECTCREATE,DROP,ALTERINSERT,UPDATE,DELETEGRANT,REVOKECREATE使用SQL语言创建基本表player(nation,number,name,age,position)Create table player -球员表 name char(20), -姓名 nation char(20), -代表国 number int -号码 age int, -年龄 position char(10) -位置 定义主码check (number between 1 to 23 ) , check (position in (守门员,后卫,中场,前锋 ), primary key (nation,number),使用SQL语言创建基本表match(matchid,match_a,match_b,matchtype)Create table match -比赛表 matchid int primary key, -比赛编号(主码) match_a char(20), -比赛甲方 match_b char(20), -比赛乙方 matchtype char(10) check (matchtype in (小组赛,淘汰赛 ) 比赛类型 使用SQL语言创建基本表Create table join -参加表 nation char(20), -代表国 number int , -号码 matchid int, -比赛编号 time int, -出场时间 goal int -进球数 primary key (nation,number,matchtype) 定义主码 定义外码 定义外码 join(nation,number,matchid,time,goal)foreign key (nation,number) reference player (nation,number)foreign key (matchid) reference match (matchid)SQL语言功能动词数据查询数据定义数据更新数据控制SELECTCREATE,DROP,ALTERINSERT,UPDATE,DELETEGRANT,REVOKESELECTSelect语句的基本句法select-From-Where句型 A1, An (F(R1 Rm))From R1, , Rm Where FSelect A1, , An这里R1、Rn为关系,F是公式,A1、An为属性。R1 RmF A1, An 使用SQL语言查询世界杯数据库中有三个基本表(关系):player(nation,number, name,position)nationnationnumbernumbernamenamepositionposition德国 13 巴拉克 中场法国 12 亨利 前锋德国 1 莱曼 守门员巴西 6 卡洛斯 后卫使用SQL语言查询match(matchid,match_a,match_b)matchidmatch_a match_b A1 德国 哥斯达黎加 A3 德国 波兰 G2 法国 瑞士 F2 巴西 克罗地亚使用SQL语言查询join(nation,number,matchid ,goal)nationnumber matchid goal 德国 13 A1 1 德国 13 A3 1 德国 1 A1 0 法国 12 G2 3 巴西 6 F2 0 德国 1 A3 0使用SQL语言查询1、检索参加比赛场次为A1的球员的代表队以及身披号码nationnationnumbernumbermatchid matchid 德国 13 A1 德国 13 A3 德国 1 A1 德国 1 A3 法国 12 G2 巴西 6 F2 nationnationnumbernumbermatchid matchid 德国 13 A1 德国 1 A1 使用SQL语言查询From joinWhere matchid=A1Select nation,number从表SC选择条件投影到相应列上1、检索参加比赛场次为A1的球员的代表队以及身披号码德国 1 A3 德国 13 A3 使用SQL语言查询nationnationnumbernumbermatchid matchid 德国 13 A1 德国 13 A3 德国 1 A1 德国 1 A3 法国 12 G2 巴西 6 F2 nationnationnumbernumbermatchid matchid 德国 13 A1 德国 1 A1 2、检索参加比赛场次为A1或A3的球员的代表队以及身披号码使用SQL语言查询From joinWhere matchid=A1Select Distinct nation,number从表SC选择条件投影到相应列上Or matchid=A3去除重复元组。2、检索参加比赛场次为A1或A3的球员的代表队以及身披号码使用SQL语言查询From joinWhere matchid=A1Select Distinct nation,numberAnd matchid=A33、检索参加比赛场次为A1或A3的球员的代表队以及身披号码想一想,这样做对吗?使用SQL语言查询nationnumber matchid goal 德国 13 A1 1 德国 13 A3 1 德国 1 A1 0 法国 12 G2 3 巴西 6 F2 0 德国 1 A3 0有某一数据项既是A1又是A3的吗?使用SQL语言查询nationmatchid德国 A1 Xnationmatchid 德国 A1 Y使用SQL语言查询X.nationX.number X.matchid Y.nationY.number Y.matchid德国13 A1 德国 13 A3德国 1 A1 德国1 A3笛卡儿积连接后的结果使用SQL语言查询From join AS X , join AS YWhereX.nation=Y.nation And X.number=Y.numberSelect X.nation,X.numberAnd X.matchid=A1And Y.matchid=A3指明是哪张表的nation,number。3、检索参加比赛场次为A1或A3的球员的代表队以及身披号码一张表使用多次时,必须要给它命名成不同的名字。使用SQL语言查询nationnumber matchid 德国13 A1 nationnumber name德国13 巴拉克4、检索参加比赛场次为A1的球员的代表队以及身披号码和姓名nationnumber nationnumber 使用SQL语言查询nationnumbernamepositionmatchid goal 德国 13 巴拉克 中场 A1 1自然连接后的结果 德国 13 巴拉克 中场 A1 1 德国 13 巴拉克 中场 A3 1 德国 1 莱曼 守门员 A1 0 德国 1 莱曼 守门员 A1 0 德国 1 莱曼 守门员 A3 0 法国 12 亨利 前锋 G2 3 巴西 6 卡洛斯 后卫 F2 0使用SQL语言查询 德国 13 巴拉克 中场 A1 1 德国 1 莱曼 守门员 A1 0nationnumbernamepositionmatchid goal使用SQL语言查询连接查询From player,joinWhereplayer.nation=join.nation And player.number=join.numberSelect player.nation,player.number,name表player与表join连接选择条件投影到相应列上And matchid=A1自然连接4、检索参加比赛场次为A1的球员的代表队以及身披号码和姓名使用SQL语言查询4、检索参加比赛场次为A1的球员的代表队、身披号码和姓名nationnationnumbernumbermatchid matchid 德国 13 A1 德国 13 A3 德国 1 A1 德国 1 A3 法国 12 G2 巴西 6 F2 nationnationnumbernumbermatchid matchid 德国 13 A1 德国 1 A1 使用SQL语言查询语句为:From joinWhere matchid=A1Select nation,number查询结果为:Nation number德国13德国使用SQL语言查询nationnationnumbernumbernamenamepositionposition德国 13 巴拉克 中场法国 12 亨利 前锋德国 1 莱曼 守门员巴西 6 卡洛斯 后卫德国 13 巴拉克 中场德国 1 莱曼 守门员使用SQL语言查询语句为:From playerWhere (nation,number) INSelect nation,number,name(德国,13),(德国,1)From joinWhere matchid=A1)(Select nation,number父查询子查询使用SQL语言查询答案2:嵌套查询From playerWhere(nation,number)INSelect nation,number,name从表player选择条件投影到相应列上From joinWhere matchid=A1)(Select nation,number首先在join关系中找出 相应的国家队名称和号码不相关子查询使用SQL语言查询4、检索参加比赛场次为A1的球员的代表队、身披号码和姓名nationnationnumbernumber name name 德国 13巴拉克 法国12 亨利 德国 1 莱曼 巴西 6卡洛斯 德国 13巴拉克 德国 1 莱曼 nationnationnumbernumbermatchid matchid 德国 13 A1 德国 13 A3 德国 1 A1 德国 1 A3 法国 12 G2 巴西 6 F2 法国12 亨利 巴西 6卡洛斯 使用SQL语言查询答案3:嵌套查询From playerWhereA1INSelect nation,number,name从表player选择条件投影到相应列上From joinWhere nation=player.nation number=player.number)(Select matchid看“A1”是否在当前检查球员参加的比赛相关子查询4、检索参加比赛场次为A1的球员的代表队、身披号码和姓名使用SQL语言查询4、检索参加比赛场次为A1的球员的代表队、身披号码和姓名nationnationnumbernumber name name 德国 13巴拉克 法国12 亨利 德国 1 莱曼 巴西 6卡洛斯 德国 13巴拉克 德国 1 莱曼 nationnationnumbernumbermatchid matchid 德国 13 A1 德国 13 A3 德国 1 A1 德国 1 A3 法国 12 G2 巴西 6 F2 法国12 亨利 巴西 6卡洛斯 使用SQL语言查询From playerWhereEXISTSSelect nation,number,name从表player选择条件投影到相应列上From SCWhere join.nation=player.nationjoin.number=player.number(Select *看是否存在当前检查球员参加了“A1”比赛的记录And matchid=A1)答案:使用存在量词的嵌套查询相关子查询4、检索参加比赛场次为A1的球员的代表队、身披号码和姓名使用SQL语言查询想一想,这样做对吗?5、检索不参加比赛场次为A1的球员的代表队、身披号码From player,joinWhereplayer.nation=join.nation And player.number=join.numberSelect player.nation,player.numberAnd matchidA1谢谢

    注意事项

    本文(《SQL的数据查询》PPT课件.ppt)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开