第六章T-SQL语句基础

上传人:人*** 文档编号:486053418 上传时间:2023-05-13 格式:DOC 页数:8 大小:74KB
返回 下载 相关 举报
第六章T-SQL语句基础_第1页
第1页 / 共8页
第六章T-SQL语句基础_第2页
第2页 / 共8页
第六章T-SQL语句基础_第3页
第3页 / 共8页
第六章T-SQL语句基础_第4页
第4页 / 共8页
第六章T-SQL语句基础_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《第六章T-SQL语句基础》由会员分享,可在线阅读,更多相关《第六章T-SQL语句基础(8页珍藏版)》请在金锄头文库上搜索。

1、第六章T-SQL语句基础理论讲解部分6.1 SQL简介6.2 使用T-SQL查询数据 1.打开查询编辑器 单击新建查询new query按钮,如图6.2所示2.输入SQL语句 Use adventureworks Select * From production.workorder where productid=732如图6.3所示。3.查看结果窗格 Results窗格如图6.4所示4.显示查询结果如图6.5所示6.2.2 select语法 Select语句语法如下。 Select select_list From table_list where search_conditions ord

2、er by order_list asc | desc 语法说明:l select_list:字段列表,样式为“表.字段1,表.字段2,表.字段I,表.字段N”.如果查询单个表,表前缀可以省略,样式为“表.字段1,表.字段2,表.字段I,表.字段N”l table_list:查询表样式为表1,表2,表N”.l search_conditions:由表字段组成的条件表达式或逻辑表达式。l order_list:查询结果按照某字段排序的字段列表。l asc | desc:asc表示升序,desc表示降序6.2.3 条件表达式 SQL server中的表达式可以包含下列一个或多个参数。l 常量:表示

3、单个指定数据值得符号。一个常量由一个或多个字母、数字字符(字母az、AZ、数字09)或符号(! #等)组成。字母和datetime 需要用单引号括起来,而二进制字符串和数字常量则不需要。l 列名:表中列的名称,表达式中仅允许使用列的名称。l 一元运算符:仅有一个操作数的运算符,其中“+”表示正数,“-“表示负数,”“表示补数运算符。l 二元运算符:将两个操作数组合执行操作的运算符。二元运算符可以是算术运算符、赋值运算符(=)、位运算符、比较运算符、逻辑运算符、字符串串联(或连接)运算符(+)或一元运算符。比较运算符及其含义见表6-1=等于,大于,小于,=大于或等于,不等于,!=不等于,等同于,

4、between指定值的包含范围(包含边界)。使用and 分隔开始值和结束值,is notnull根据使用的关键字,指定是否搜索空值或非空值。如果有任何一个操作数为null则包含位运算符或算术运算符的表达式的计算结果为null,like模糊查询“像什么一样“,与指定字符串进行模式匹配,in是否在数据范围里面 可以用这些运算符组成条件表达式。例如,编写以下条件表达式。 Price 100 Name like 李%,表示满足name姓名字段里姓李的所有姓名。 Grade 3 Price between 100 and 200, 表示满足大于等于100并且小于等于200的price值。 使用like运

5、算符的T-SQL语句中还需要使用表6-2所示的通配符运算符。 _一个字符如:AlikeC_:%任意长度的字符串如:Blike co_%括号中所指定范围内的一个字符如:Clike9W01-2不在括号中所指定范围内的任意一个字符如Dlike9W01-2通配符经常与like关键字一起配合使用完成模糊查询。可以使用like和通配符来完成对表的一些特殊约束。例如,要求表中的电话号码列输入的格式为11位手机号,可以编写以下的约束:Telcode like 135-90-90-9 0-9 0-9 0-9 0-9 在查询中也经常会用到like语句。注意:like指模糊查询符合特征的数据。6.2.4逻辑表达式

6、T-SQL支持的逻辑运算符有and、or和not,如表6-3所示。Not和其他操作符一起使用,取反的操作;and组合两个条件,并在两个条件都为true时取值为true;or组合两个条件,并在两个条件之一为true时取值为trueAnd和or运算符是连接条件表达式,not否定条件。And连接两个条件,并且仅当两个条件都为真时才返回true.or也连接两个条件,但只要其中任意一个为真就返回true.当一个语句中使用了多个逻辑运算符时,首先求not的值,然后求and的值,最后再求or的值。例如采购订单表中的付款方式是信用卡,约束要求只能是牡丹卡、金穗卡、龙卡或者阳光卡,可以编写如下的约束表达式:(付

7、款方式=信用卡) and (信用卡 in (牡丹卡,金穗卡,龙卡,阳光卡)注意:IN关键字用来限制范围。在查询中经常会用到逻辑表达式和条件表达式。6.2.5 查询常见种类1. 查询所有的数据行和列 Select * from t_news2. 查询部分行列-条件查询 例如查询t_news表中来源为“腾讯网”的新闻标题和时间,T-SQL语句如下表示 Select newstitle,newsdate From t_news Where newsource =腾讯网 查询结果如图6.6所示同理,只要不是腾讯网的新闻都显示出来,查询结果如图6.7所示 Select newstitle,newsdat

8、e From t_news Where newsource 腾讯网3. 在查询中使用列名 AS子句可以用来改变结果集列的名称,也可以为组合或者计算机的列指定名称,还有一种情况是让标题列的信息更易懂。 例如,把newstitle列名查询后显示为“新闻标题“,newadate显示为”新闻日期“。在T-SQL中重新命名列名可以使用AS子句,查询结果如图6.8所示。 Select newstitle AS 新闻标题,newadate 新闻日期 From t_news Where newsource 腾讯网 还有一种情况时使用计算、合并得到新列的命名。例如,在查询新闻表t-news,将新闻标题与新闻来源

9、合并为形式:“新闻标题”来源于“新闻来源”,可以执行以下查询语句。 Select newstitle+来源于+newsource as 新闻标题 From t_news 重新命名列名还有一种方法,就是采用“=”来命名 ,例如: Select 新闻标题=newstitle+ 来源于+newsource From t_news4. 查询空行在SQL语句中采用“is null”或者”is not null”来判断是否为空行。例如,如果查询所有新闻来源newsource为空null的新闻,可以使用以下查询语句。 Use news_manage Select newstitle,newscounent

10、from t_news where newsource is null 查询结果如图6.9所示5. 在查询中使用常量列 查询新闻来源为空的新闻信息,这些新闻的新闻来源默认“北大青鸟”,查询输出的语句: Select newstitle as 新闻标题,北大青鸟 as 新闻来源 From t_news Where newasource is null 查询输出多了一列“新闻来源”,该列的所有数据都是“北大青鸟”,如图6.10所示6. 查询返回限制的行数例如在测试的时候,如果数据中有上万条记录,而只要检查前面10行数据是否有效就可以了,没有必要查询输出全部的数据,以提高查询速度,这时候就要用到限制

11、返回行数的查询。 在t_SQL语句中,限制行数使用top关键字来约束,例如要查询返回3条新闻标题可使用以下语句。 Select top 3 newstitle as 新闻标题 From t_news 查询结果如图6.11所示还有一种情况是需要从表中按一定的百分比提取记录,这时候还需要用到percent关键字来限制,例如要显示20%的新闻标题,查询结果如图6.12所示。 Select top 20 percent newstitle as 新闻标题 From t_news6.2.6 select单表查询举例 例如:查询新闻分类表t_class所有信息,主要操作如下。选择news_manage数据

12、库,在查询编辑器里输入以下语句: Select * from t_class 其中,t_class为表名,“*”是通配符,表示选择表中 所有的列步骤:1. 新建查询单击new query(新建查询)按钮,如图6.13所示。2 输入SQL语句 输入如图6.14所示的语句。3,执行查询 单击execute(执行查询)按钮,如图6.15所示4,显示结果 显示如图6.16所示的结果例如:只查询t_class表中的classid、classname列信息,则可执行如下语句 Select classid,classname from t_class 在查询编辑器里输入查询语句和查询结果分别如图6.17和6

13、.18所示1. 输入SQL语句如图6.17所示。2. 显示结果结果如图6.18所示例如:查询新闻点击率大于10次以上的新闻,可以在查询编辑器里输入如下语句: Select * from t_news where hits10 其中,where子句是select语句的一部分,查询将根据指定的条件返回数据行。在工具栏中单击“执行”按钮,查询结果如图6.19所示 在where 子句中,也可以指定其他操作符来返回想要的结果。 例如:查询点击率在10到12 之间的新闻,可以在查询编辑器里输入如下语句: Select *from t_news where hits between 10 and 12在工具

14、栏中单击“执行”按钮,结果如图6.20所示。注意,与上一个例子相比,查询结果多了点击率为10的查询结果。例如:查找新闻来源是新浪的新闻,可以在查询编辑器里输入如下语句Select * from t_news where newsource like 新浪%其中,使用like关键字来匹配相似的值,like 关键字包括两个通配符:下划线(_)通配符匹配单个字符,百分比(%)通配符匹配零到多个字符。在工具栏中单击“执行”按钮,查询结果如图6.12所示例如;返回按点击率从高到低排序的结果,输入如下语句: Select newstitle ,newsdate,hits from t_news Order by hits desc 其中,使用Order by子句排序select 语句的查询结果。Desc 关键字指示结果按降序排列。系统默认使用升序排列,其关键字是asc.在工具栏中单击执行“按钮,查询结果显示如图6.22所示。6.3 使用T-SQL插入数据6.3.1 insert语法 insert语法格式如下。Insert into 列名 values 值列表其中:l into是可选的,可省略。l 表名是必须的,表的列名是可选的,如果省略,.中顺序 与数据表中字段顺序

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号