版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第十章第十章 T-SQL T-SQL 查询基础查询基础本章内容nSelect语句的功能n使用select语句查询数据n使用Top、 Distinct关键字n使用计算列n修改查询显示的列名(列标题)n使用Where子句n使用LIKE子句进行模糊查询n使用Order by给数据排序Select语句的功能n检索数据n查询SQL Server系统信息n给变量赋值n使用select语句查询数据n使用“ * ”选取所有列n指定列n使用where子句选择行Select 语句的部分语法n:选取哪些列n:从哪些表选取数据n:搜索条件SELECT ALL | DISTINCT FROM ,n WHERE 使用“
2、* ”选取所有列n例:Select * from employeesn显示employee的所有行、所有列n可能会造成漫长的查询,尽量避免使用这种语句指定列1DavolioNancySales Representative2FullerAndrewVice President, Sales3LeverlingJanetSales Representative4PeacockMargaretSales Representative5BuchananStevenSales Manager6SuyamaMichaelSales Representative7KingRobertSales Repre
3、sentative8CallahanLauraInside Sales Coordinator9DodsworthAnneSales RepresentativeUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesGO使用where子句选择行5BuchananStevenSales ManagerUSE northwindSELECT employeeid, lastname, firstname, titleFROM employeesWHERE employeeid = 5GOSelect 语句的其
4、他功能(演示)n查询系统信息nSelect versionn给变量赋值ndeclare a int select a=3 select a使用Top关键字n返回表中前面的一部分数据;n语法: Select TOP integer | TOP integer PERCENTColumn_name ,n FROM table_namen示例nTOP 120 /*返回120行*/nTOP 15 PERCENT /*返回15%的数据行*/使用Distinct关键字n从返回的结果集中删除重复的行n语法:SELECT ALL | DISTINCT TOP n PERCENT .n注意:distinct 和
5、 top关键字出现的先后顺序课堂演示nTOPnSelect country from publishersnSelect top 3 country from publishersnSelect top 3 percent from publishersnDISTINCTnSelect country from publishersnSelect distinct country from publishersnSelect distinct top 2 country from publishers使用计算列n在查询时使用计算列n在创建表时使用计算列在查询时使用计算列(一)n查询Pubs数据
6、库中titiles表中的书号、书名、单价,销售数量(ytd_sales)Select title_id, title, price, ytd_sales, From titles在查询时使用计算列(二)n查询Pubs数据库中titiles表中的书号、书名、单价,销售数量以及这批书的总销售额。Select title_id, title, price, ytd_sales, price * ytd_salesFrom titles在创建表时使用计算列(一)n语法:CREATE TABLE database_name. owner .| owner. table_name( | column_na
7、me AS computed_column_expression | := CONSTRAINT constraint_name | PRIMARY KEY | UNIQUE ,.n ) 在创建表时使用计算列(二)n举例:CREATE TABLE titles (title_id varchar (6) ,title varchar (80) type char (12),price money , ytd_sales int, ytd_income AS price * ytd_sales ) 修改查询显示的列名(列标题)n对列名进行操作有3种方式nCol_name col_aliasnCo
8、l_alias=col_namenCol_name AS col_alias课堂练习n针对pubs数据库的titles表n查询时使用计算列,显示折后价格n使用计算列创建一个类似的表n使用三种修改列名方法中的任意一种,修改查询显示的列名使用Where子句n在Where字句中使用不同的搜索条件过滤数据n比较操作符n字符串比较n逻辑操作符n使用BETWEEN关键字n使用IN关键字n未知的值(NULL)比较操作符n比较操作符n=, n , !=, !, !=, , !这类比较操作符,他们会使查询速度减慢。使用逻辑操作符n使用逻辑操作符连接多个表达式n逻辑操作符:nANDnORnNOT使用逻辑操作符举例
9、n查询pubs数据库中titles表价格小于20美元且种类为business的所有图书。Select title_id, title, type, priceFrom titlesWhere price = 15 And price = 20使用IN关键字n使用IN关键字简化对某一范围的数据的检索。n举例:在pubs数据库的authors表中搜索所有居住在KS, CA, MI或IN州的作家。Select au_id, au_lname, au_fnameFrom authorsWhere state IN (CA,KS,MI,IN)IN语句的替代方式n如果不使用IN语句,可以用别的方式代替:S
10、elect au_id, au_lname, au_fnameFrom authorsWhere state = CA OR state = KS OR state = MI OR state = IN范围查找n对某一个范围的数据的查找,我们可以n把 以及And, OR结合起来用;n使用betweenand语句n使用in语句n注意:尽量避免使用NOT运算符,那样会减慢查询速度nNot betweenandnNot in未知的值、空值NULLn什么是NULL值?n在输入数据的时候,如果没有指定某一个字段的值,且此字段没有定义缺省的值,则称此字段含有空值(NULL)n如何判断某个字段是否为空:co
11、l_name = NULLcol_name IS NULL关于NULLn检查某一列是否为空,使用IS NULL,IS NOT NULL。决不能使用=NULL或!= NULL。n空值参与运算结果都是空值。一定要注意这一点,否则会带来不可预计的结果。课堂练习n搜索pubs数据库中的titles表,返回书的价格打了8折后仍大于12美元的书的代号、种类、书的原价。n查询pubs数据库中titles表价格在10-20美元之间且种类为business或popular_comp的所有图书。n查询titles表中没有价格的图书。使用LIKE子句进行模糊查询n通配符的使用n转意字符的使用通配符的使用n%:任意多
12、个任意字符n_:单个任意字符n:方括号内列出的任一个字符n:任意一个没在方括号内列出的字符LIKE子句与通配符(一)n查询所有以D开头的作家的名字Use pubsGoSelect au_lname + , + au_fnameFrom authorsWhere au_fname LIKE D%goLIKE子句与通配符(二)n老板要来查一个人的资料,只记得这个人的编号中的某几位,第一部分前两位为72,第二部分第一位为5(注:authors表中电话号码的格式是#-#-#)use pubsgoSelect * from authorsWhere au_id LIKE 72_-5%LIKE子句与通配符
13、(三)n老板又来查资料了!只记得这个人的编号中的某几位,第一部分前两位为72,第二部分第一位不是0就是8,第三部分最后两位是91(注:authors表中电话号码的格式是#-#-#)use pubsgoSelect * from authorsWhere au_id LIKE 72_-08_-_91通配符使用小结(一)通配符使用小结(二)n一定要把LIKE运算符与=运算符区别开来!n同配符只有在LIKE子句中才有意义。Use pubsGoSelect au_lname + , + au_fnameFrom authorsWhere au_fname = D%go转义字符的使用n万一要查询的字符串
14、中包含了通配符作为字符串的一部分,如何处理?n假设一个表test的某一列col有以下4个值:nxyzn%xyznx_yznxyz转义字符举例n查找以“X_”开头的字符串Select col From testWhere col LIKE X_%ESCAPE 课堂练习n通配符练习:书上148页试一试。n转义符练习:使用演示脚本创建表、插入数据,查找以%开头的数据。使用Order by给数据排序n语法: ORDER BY order_by_expression ASC | DESC ,.n norder_by_expression:指定要排序的列。nASC:升序(默认)nDESC:降序使用Order by排序举例(一)n对pubs数据库中stores表中的仓库名进行排序。Use pubsGoSelect stor_nameFrom storesOrder by stor_namego使用Order by排序举例(二)n使用列的位置指定要排序的列。Use pubsGoSelect stor_id,stor_name,stor_addressFrom storesOrder by 2 DESCgo使用Order by排序举例(三)n对计算列进行排序Use pubsGoSelect title_id,price * ytd_sales AS profit From titlesOr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- XX山体滑坡治理工程施工组织设计
- 围墙施工机械设备
- 土工布工程施工方案
- 废水处理两布一膜防渗层施工措施
- 基于RFID的睡眠状态分析-洞察与解读
- 智慧建筑物联网平台集成管理-洞察与解读
- 加密算法优化-第13篇-洞察与解读
- 高分子生物传感界面设计-洞察与解读
- 2026届新高考数学考前冲刺最后一课 圆锥曲线中的求值、最值和范围问题
- 大数据灾害分析-洞察与解读
- 《居家安宁疗护服务规范(征求意见稿)》编制说明
- 高中化学与生物跨学科融合:化学键视角下的营养素相互作用教学设计
- 浙江省省杭州市上城区建兰中学2026届中考数学四模试卷含解析
- 乌鲁木齐地区房屋建筑与市政工程施工图文件审查常见问题汇编2025版(勘察专业)
- 青海青江实业集团有限公司招聘笔试题库2026
- 2026贵州黔晟投资有限公司第一批社会招聘8人备考题库附答案详解(完整版)
- 感染质控中心工作制度
- (完整版)2026年党建基础知识应知应会试题及答案
- 农业行政处罚程序和文书制作课件
- 输电线路改造工程验收交底
- 气动冲床设备日常点检标准作业指导书
评论
0/150
提交评论