SQLServer2000网络数据库教程 第6章 SQL查询语句基础.pdf
《SQLServer2000网络数据库教程 第6章 SQL查询语句基础.pdf》由会员分享,可在线阅读,更多相关《SQLServer2000网络数据库教程 第6章 SQL查询语句基础.pdf(79页珍藏版)》请在咨信网上搜索。
1、第6章SQL查询语句基础第6章SQL查询语句基础本章要点:掌握简单的Transact-SQL查询语句。学会对查询结果进行分组统计、合计和排序等复杂的SELECT语句操作。6.1 SELECT条件歹U表6.2 FROM子句6.3 WHERE子句6.4 统计6.5 利用杳询结果创建新表6.6 使用UNION运算符实现多查询联合6.7 连接6.8 子查询SQL Server 2000网络数据库教程第6章SQL查询语句基础6.1 SELECT条件歹I 表数据查询是数据库应用的核心功能一、基本结构Select Al,A2,AnFrom rl,r2,,rmWhere P;A2,Xrl X.X rm)SQL
2、 Server 2000网络数据库教程第6章SQL查询语句基础Select语句的含义对From子句中的各关系,作笛卡儿积(X。对 子句中的逻辑表达式进行选择(。)运算,找出符合条件的元组。根据 子句中的属性列表,对上述结果作投影()操作。结果集,查询操作的对象是关系,结果还是一个关系,是一个结果集。SQL Server 2000网络数据库教程第6章SQL查询语句基础SELECT条件歹U表 Select子句(选择表中若干列)Where子句(选择表中若干行)Order By子句(对查询结果排序)聚集函数SQL Server 2000网络数据库教程第6章SQL查询语句基础SELECT条件歹!表选择表
3、中的若干列查询全部列 星号*:按关系模式中属性的顺序排列。显式列出属性名:按用户顺序排列。显示雇员表中所有列的数据。SELECT*from 雇员 显示雇员表中的雇员ID和姓名列的内容 SELECT雇员ID,姓名From雇员SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.1下面语句显示雇员表中所有列的数据。SELECT*from 雇员结果如图6-1所示:雇员工D1姓名取务12-3 4-5 6 7 8 9123456789颖伟芳建军嘛士庾湾 张王郑西到装yl木销售代表副怎裁(销售)销售代表杰销售代表销售运理 销售代表膜销售代表玫内部销售协调员眉销售代表图6-1雇员表中所有
4、列的数据显示SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.2显示雇员表中的雇员ID和姓名列的内容 SELECT雇员ID,姓名From雇员o结果如图6-2所示:图6-2雇员表中雇员ID和姓名列的内容显示SQL Server 2000网络数据库教程第6章SQL查询语句基础SELECT条件列表一更名为结果集中的某个属性改名 使结果集更具可读性其格式为;列标题=列名或者:列名AS列标题SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.3在雇员表中使用英文employeeid代替雇员 ID,用name代替姓名显示列标题。SELECT employeei
5、d=雇员ID,姓名 AS name From 雇员结果如图6-3所示:e23456789123456789颖伟君箜空警 小基郑箸嘉*图6-3使用英文显示雇员表中列标题SQL Server 2000网络数据库教程第6章SQL查询语句基础SELECT条件歹U表一选择表中的若干元组消除取值重复的行Select子句的缺省情况是保留重复元组(ALL),可用Distinct去除重复元组例6.4在雇员表中使用缺省设置显示“职务”歹小SELECT职务From 雇员SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图64所示:与肖至肖一在美肖曾代养内含g与法一司员辛甫曾代美MH丰百安1,
6、弋定 鬲uw转车诗曾1弋差 年诗曾1弋春王里图6-4使用缺省设置显示雇员表职务列SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.5在雇员表中使用DISTINCT选项则可以删除职务列 重复的值。SELECT DISTINCT 职务 From 雇员结果如图65所示:1 副总裁(销售)二口内部销售由,调员3 i销售代表|w!销售经理图65雇员表中删除职务列重复值的结果返 0SQL Server 2000网络数据库教程第6章SQL查询语句基础6.2 FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视 图。在FROM子句中最多可指定16个表或视图,它们相 互
7、之间用逗号分开,如果这些表属于不同的数据库,可用数据库,所有者名称.对象格式加以限定。川 FROM子句同时指定多个表和视图的时,如果SELECT列 表中的列名在两个或两个以上的表和视图中存在,为 避免二义性,应使用对象名称限定这些列所属的表和 视图。SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.6在雇员表和订单表中同时有雇员ID列,根据 雇员ID,查询两个表中雇员的姓名和订购日期列,应使 用下面语句查询。Select姓名,订单.订购日期From雇员,订单Where雇员.雇员ID二订单.雇员ID结果如图6-6所示:SQL Server 2000网络数据库教程第6章SQ
8、L查询语句基础妊者 订购日期1格苹1996-07-04OO:OOzOO孑小科1996OT05OO:OO:OO3关B逞本199607Q8OO zOO:OO419960708OO:OO:OO旦关B建美19960709OO:OO zOO广*量1996OT1OOO:OOsOO7超车19960711OO SOO zOO8张:一.直1996OT12OO:OO zOO9-宰若1996OT15OO=OO:OO1O美B逞美1996OT16OO:OOsOO一张颖1996一071TOO zOO zOO1 2 关B磋本B 一 _ _.一 一1996OT18OO:OO:o13关营建本19960719OO:OO zOO1
9、4关g兔管本1996。719OO:OOsOO15刘际王攵1996OT22OO SOO zOO图66在两个表中的查询信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础在FROM子句中可为每个表或视图指定一个别名,别名紧跟在对象名称之后,之间用空格分隔,然后可 以使用别名引用表中各列。例6.7给雇员表和订单表分别指定g和d的别名,使用别名引用表。Select姓名,d.订购日期From雇员g,订单dWhere g.雇员ID二d.雇员IDSQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6-7所示:t121 3赵孙郑率郑李赵张季郑张郑郑郑刘军林建芳建
10、芳军雪芳建颖建建建英杰杰 眉杰杰杰杰玫1996-07-04 00:00:001996-07-05 00:00:001996-07-081996-07-081996-07-091996-07-101996-07-111996-07-121996-07-151996-07-161996-07-171996-07-181996-07-191996-07-191996-07-2200:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:0000:00:00图6-7使用别名查
11、询信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础在缺省情况下,FROM子句不指定数据库名 称,查询的数据库为当前数据库。使用USE语 句可以将其他数据库设置为当前数据库,USE 语句的格式为:USE数据库名例6.8下面语句选择dzsw数据库为当前数据库:Use dzsw返 回SQL Server 2000网络数据库教程第6章SQL查询语句基础6.3 WHERE子句 SELECT语句中的WHERE子句用来指定查询条件。例6.9获得雇员表中职务为销售代表的人的雇员ID和 姓名。SELECT雇员ID,姓名From雇员Where职务=销售代表,SQL Server 200
12、0网络数据库教程第6章SQL查询语句基础结果如图6-8所示:.隹员工D 娃名1 _ 1 张新-_3 幸方口 _ 4 关际建三场4 I 6 孑小林B I T 金士且展已 9 号长杳笔图6-8查询职务为销售代表的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础Where子句运算符比较:=、V、=、v=、!=、v、!、!v、not+确定范围:Between A and B、Not Between A and B 确定集合:IN、NOT IN 字符匹配:LIKE,NOT LIKE 空值:IS NULL、IS NOT NULL 多重条件:AND、OR、NOTSQL Serve
13、r 2000网络数据库教程第6章SQL查询语句基础Where子句比较大小例6.10获得雇员ID大于等于3的所有职员的 雇员ID,姓名和职务。select雇员ID,姓名,职务from雇员where 雇员 ID=3SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6-9所示:雇员工D妊名273456789李芳 销售代表郑建杰销售代表赵军 孑小林销售经理 销售代表金士睡销售代表刘英玫内部销售协调员张雪眉销售代表图6-9查询雇员ID大于等于3的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.n下面例子中从产品表中要获得单价大于 4.0美元典所
14、有产品名称,当前汇率为1人民币兑换 0.125美元。Select产品名称From产品Where 单价*0.1254.0SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6To所示:品二名毛亍瓷另11HD岸存量L1舌月蚀钙26-62913售国必醋486_!宿肉6O8426桂年食3407 1牛肉干3498 一:JW闵隹T261 口工肉6OI口奉亲11 71 1柄n偿;十11 T12落肉千T2013拈17k甲鸟6OI白*52 11|光明班型qT916年班造41 917山灌什31 718地望咨2241952220害也不第q2621_J4 二14图6-10查询产品表中单价大于4
15、美元的产品名称结果SQL Server 2000网络数据库教程第6章SQL查询语句基础Where子句确定范围 BETWEEN关键字指定WHERE子句的搜索范围,其格式为:表达式 BETWEEN X AND Y 查询时,它要求表达式的值大于等于X小于 等于Y。SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.12从产品表中获得单价在3040之间 的所有产品的单价,产品名称和库存量。Select单价,产品名称,库存量From产品Where 单价 between 30 and 40SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6-11所示:1:产
16、品名秫库存量J_130.0000海鲜市分 152-J40.0000胡椒粉 631.0000 31H!38.0000德国奶酩86LLJ39.0000 猪肉 0*31.2300棉花糖 157 32.0000白妨能 932.8000盐水甲鸟 038.0000 白米 21山34.0000花奶能 191133.2500 黄豆 2212 136.0000黑奶酩 261音i34.8口口。酸奶能 14图6-n查询产品表中单价在30至40元之间的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础Where子句-确定集合 谓词IN可以用来查找属性值属于指定集合的元组。NOT IN用来查找
17、属性值不属于指定集合的元组。例6.13:获取订单表中订单ID等于10255或10262或 10249的所有列。Select*From订单Where 订单ID IN(10255,10262,10249)SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6T2所示:订靴耕口藏IP供应瓠;溅联 懒馥1J 10249 2 6 3 1996-07-05 00:00:00 1996-07-10 00:00:002 10255 1 9 8 W9HM2 00:00:00 1996-07T5 00:00:003 10262 5 8 10 1996-07-22 00:00:00 1996
18、-07-25 00:00:00图6-12查询订单表中指定的订单ID值的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础操作符IN可以和布尔操作符NOT一起使用来查询所 获得的是在相应列中不包含任何所列出的数值的行。例6.14获取订单中订单ID既不是10255也不是 10262的所有列。Select*From订单Where 订单ID not IN(10255,10262)SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6T3所示:发货日期订单ID客户ID雇员ID:供应商ID订购日期LU102481551996-07-04 00:00:00
19、1996-07-1600:00:001102503461996-07-08 00:00:00 1996-07-1200:00:00|1025143101996-07-08 00:00:00 1996-07-1600:00:001025254291996-07-09 00:00:00 1996-07-1100:00:001025363251996-07-10 00:00:00 1996-07-1600:00:00。102547511996-07-11 00:00:00 1996-07-2300:00:00102568371996-07-15 00:00:00 1996-07-1700:00:00
20、81025794191996-07-16 00:00:00 1996-07-2200:00:0010258101111996-07-17 00:00:00 1996-07-2300:00:00JI1025914151996-07-18 00:00:00 1996-07-2500:00:00111026024171996-07-19 00:00:00 1996-07-29 00:00:00121026134201996-07-19 00:00:00 1996-07-30 00:00:00图6-13查询订单表中非指定订单ID值的信息结果SQL Server 2000网络数据库教程第6章SQL查询语
21、句基础Where子句-模式匹配符Like模式匹配符NOT LIKE常用于模糊查询,它 判断列值是否与指定的字符串格式匹配。在 SQL Server中可使用的匹配符有以下几种:百分号():可匹配任意类型和长度的字符。下划线(_):匹配单个任意字符。方括号口:指定一个字符、字符串或范围,要 求所匹配对象为它们中的任何一个。A:与口取值相同,但要求所匹配的对象为指 定范围以外的任何一个字符。SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.15:利用通配符外来查找雇员表中姓“张”的雇员的所有列信息。SELECT*FROM 雇员 WHERE 姓名 LIKE 张炉结果如图6T4所
22、示:I 雇员工可姓名:职务1 T 张颖销售代表|2J9 张雪眉汽肖售代表图6/4查找雇员表中姓张的雇员的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.16:利用通配符“和“,来查找雇员表中 姓名的第二个字为“雪”的雇员的许有列信息。SELECT*FROM 雇员 WHERE 姓名 LIKE _雪,结果如图6T5所示:9雇员ID姓名职务张雪眉销售代表图6-15查找雇员表中姓名的第二个字为“雪”的雇员的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础除了百分号和下划线,Transact-SQL还支持其他与LIKE操作 符一同使用时拥有特
23、殊意义的字符。下面的两个例子就是用到了,n。例6.17:利用通配符”和,来查找雇员表中姓名的第一 个字为“张”或者“王”或者“赵”或者“孙”的雇员的所有列 信息。SELECT*FROM雇员WHERE姓名LIKE 张,王,赵,孙炉结果如图6T6所示:,雇员工口牲二告 职奏-1 2 5 6 91-2 3 4 5-一,一:二一 V二一、张颖 销售代表王伟 副忌趣造肖售,赵军 销售是理孙林 销售代表张雪眉销售代表图6-16查找雇员表中姓名列指定姓氏雇员的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础字符可旨定了一个字符范围或是一列字符的非。只有 当用在一对方括号中的时候,
24、这个字符才具有此意义。例6.18:利用通配符 和厂来查找雇员表中姓名 的第一个字不是“张”也不是“王”的雇员的所有列信SELECT*FROM 雇员 WHERE 姓名 LIKE,八张,王%,SQL Server 2000网络数据库教程第6章SQL查询语句基础结果如图6T7所示:雇员口姓名职务II 13 2d446 5 7 6 g李芳精售代表 _ 郑建杰销售代表赵军鞘售经理 孙林销售代表 金士鹏销售代表 划英政内部情售协调员图6-17查找雇员表中姓名列非指定的姓氏雇员的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础例6.19利用通配符“和二来查找雇员表中姓名的 第二个
25、字不是“雪”的雇员的所有列信息。SELECT*FROM 雇员 WHERE 姓名 not LIKE 1雪,结果如图6-18所示:雇员工D姓名 职务1 2-3 4 5 6 7 812345 6 78-一1颖伟芳建军职士康 张王举郑起利金x销售代表 副总裁(销售)销售代表_销售代表销售经理销售代表销售代表内部销售协调员图6-18查找雇员表中姓名的第二个字不是“雪”的雇员的信息结果SQL Server 2000网络数据库教程第6章SQL查询语句基础Where子句-空值查询 空值意味着用户没有输入值,它既不代表空格也不为3空值与任何数据运算或比较时,其结果仍为空,空 值之间也不能匹配。所以在WHERE子
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SQLServer2000网络数据库教程 第6章 SQL查询语句基础 SQLServer2000 网络 数据库 教程 SQL 查询 语句 基础
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【曲****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【曲****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。