《《SQL入门基础》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《SQL入门基础》PPT课件.ppt(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、SQLSQL入门基础入门基础资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值概要与大纲概要与大纲nSELECT语句的使用语句的使用n表达式、条件语句与运算表达式、条件语句与运算nSQL的子句的子句n表的联合表的联合n子查询、内嵌子查询、内嵌SQL2资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SELECT语句的使用语句的使用n数据报的形成数据报的形成SELECT 和和FROMnSELECTnFROMnSelect表示需要取什么nFrom表示从
2、哪里取3资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SELECT语句的使用示例语句的使用示例n选择全部列选择全部列nselect*fromchecks4资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SELECT语句的使用示例语句的使用示例n选择指定列选择指定列nSELECTpayee,remarks,amount,check#fromchecks;5资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值
3、的这部分资金就是原有资金的时间价值SELECT语句的使用示例语句的使用示例n显示所有行显示所有行nselectamountfromchecksn显示不重复的行显示不重复的行nselectDISTINCTamountfromchecks6资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算表达式、条件语句与运算nSELECTnFROMnWHEREnSelect表示需要取什么nFrom表示从哪里取nWhere表示需要满足哪些条件7资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移
4、而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例n返回所有行返回所有行nSELECT*FROMBIKES8资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例n返回指定行返回指定行nSELECTFROMBIKESWHERENAME=BURLEY9资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例n
5、使用表达式使用表达式nSELECTITEM,WHOLESALE,WHOLESALE+0.15FROMPRICE10资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例n使用表达式别名使用表达式别名nSELECTITEM,WHOLESALE,(WHOLESALE+0.15)RETAILFROMPRICE11资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运
6、算示例n使用表达式列名使用表达式列名nSELECTLASTNAME|,|FIRSTNAMENAMEFROMFRIENDS12资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例nWhere中使用条件表达式中使用条件表达式nSELECTLASTNAME,YEARS*12-LEAVETAKENREMAININGFROMVACATIONWHERELASTNAMELIKEB%ANDYEARS*12-LEAVETAKEN5013资金是运动的价值,资金的价值是随时间变化而变化的,是时
7、间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例n提问:如何解读如下提问:如何解读如下SQLnSELECTLASTNAMEWORKAHOLICSFROMVACATIONWHEREYEARS=5AND(YEARS*12)-LEAVETAKEN)/(YEARS*12)0.50n1、访问的是哪张表;、访问的是哪张表;2、检索的字段显示的名称是什么;、检索的字段显示的名称是什么;3、过滤条件如何解读、过滤条件如何解读14资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有
8、资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例n汇总函数的使用汇总函数的使用count,sum,max,n返回的是一个汇总值,不会返回结果集返回的是一个汇总值,不会返回结果集15资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例nSELECTCOUNT(*)FROMTEAMSTATSWHEREHITS/AB35nSELECTCOUNT(*)NUM_BELOW_350FROMTEAMSTATSWHEREHITS/AB3516资金是运动的价值,资金的价值
9、是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表达式、条件语句与运算示例表达式、条件语句与运算示例nSELECTSUM(SINGLES)TOTAL_SINGLESFROMTEAMSTATSnSELECTMAX(HITS)FROMTEAMSTATS这个语句错在哪?SELECT*FROMTEAMSTATSWHEREHITS=MAX(HITS)17资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句的子句group by&order bynSELECTnFROMnWH
10、EREnGROUPBYnORDERBY18资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句的子句group by&order bynGroup by 是分组是分组nOrder by 是排序是排序nGroup by返回的各个分组结果只有一个返回的各个分组结果只有一个nOrder by返回的排序结果一般是多个值返回的排序结果一般是多个值nGroup by一般与汇总函数搭配使用一般与汇总函数搭配使用nOrder by可以和可以和group by 同时使用,只不过同时使用,只不过order by必须放在所有子句的最
11、后必须放在所有子句的最后19资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句示例的子句示例nSELECT*FROMCHECKS20资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句的子句order by 示例示例nSELECT*FROMCHECKSORDERBYCHECK#1、对check#降序怎么做?2、同时对check#,payee排序怎么做?21资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的
12、推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句的子句group by 示例示例nSELECTPAYEE,SUM(AMOUNT)FROMCHECKSGROUPBYPAYEE22资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句的子句group by 示例示例n使用groupby时,select后面检索的结果必须出现且仅只能出现在groupby中使用的字段或者字段组合nSELECTPAYEE,SUM(AMOUNT)FROMCHECKSGROUPBYPAYEE(正确)nSELECTPAYEE,AM
13、OUNTFROMCHECKSGROUPBYPAYEE(错误)为什么第一个是正确的,第二个是错误的23资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值SQL的子句的子句group by 示例示例n使用Groupby相当于对分组后的集合分别进行SUM或者max等汇总操作24资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表的联合表的联合nSELECT,nFROM,nWHEREandn多数情况下使用等值联合,即关联条件中使用=将表与表之间相关联的字段
14、联系起来25资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表的联合示例表的联合示例Partnum(商品代码)是关联字段26资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表的联合示例表的联合示例nSELECTO.ORDEREDON,O.NAME,O.PARTNUM,P.PARTNUM,P.DESCRIPTIONFROMORDERSO,PARTPWHEREO.PARTNUM=P.PARTNUM27资金是运动的价值,资金的价值是随时间变化而变化的
15、,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值表的联合示例表的联合示例n提问:下列语句是对还是错,为什么nSELECTE.NAME,E.ID,EP.SALARYFROMEMPLOYEE_TBLE,EMPLOYEE_PAY_TBLEPWHEREE.NAMELIKE%MITHANDEP.ID=10009ANDE.ID=1000928资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值子查询、内嵌子查询、内嵌SQLnSELECT,nFROMnWHEREn子查询是一种把查询的结果作为参数返回给上一级查
16、询使用的查询29资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值子查询、内嵌子查询、内嵌SQL示例示例n表联合的例子nSELECTO.QUANTITYFROMORDERSO,PARTPWHEREO.PARTNUM=P.PARTNUMANDP.PRICE=15.25n子查询的例子nSELECTO.QUANTITYFROMORDERSOWHEREO.PARTNUMIN(SELECTP.PARTNUMFROMPARTPWHEREP.PRICE=15.25)什么情况下上例中的in可以换成=30资金是运动的价值,资金的价值是随时
17、间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值子查询、内嵌子查询、内嵌SQL示例示例n子查询中select后面出现的列个数、顺序必须与上一级查询where条件中的列个数、顺序要一致,即上级查询中的条件参数和子查询中的返回参数的个数和顺序要一致提问:查询购买商品总数量超过15件的客户所购买的商品名称清单,并按照客户名字的降序排序显示(表和数据请参考26页的内容)31资金是运动的价值,资金的价值是随时间变化而变化的,是时间的函数,随时间的推移而增值,其增值的这部分资金就是原有资金的时间价值作业作业n有下面三个关系表:nCARD借书卡表(CNO卡号,NAME姓名,CLASS班级)nBOOKS图书表(BNO书号,BNAME书名,AUTHOR作者,PRICE单价,QUANTITY库存册数)nBORROW借书记录表(CNO借书卡号,BNO书号,RDATE还书日期)n1、查询借阅了“水浒”一书的读者,输出姓名及班级n2、查询现有图书中价格最高的图书,输出书名及作者n3、查询书名包括“网络”关键词的图书,输出书号、书名、作者n4、查找至今无人借阅的图书的书名、作者、库存册数n5、查询当前借了“计算方法”但没有借“计算方法习题集”的读者,输出其借书卡号,并按卡号降序排序输出32谢谢谢谢