SQL Server数据库技术(56)[MSSQL防范]
本文“SQL Server数据库技术(56)[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
从本节开始,我们将用大量的实例来报告SELECT 语句的利用.首先从最简单也是最常用的单表查询开始.
10.2.1 挑选列
(1) 用SELECT 子句来指定查询所需的列,多个列之间用逗号脱离
(2) 可以利用标记"*"来选取表的全部列
(3) 在查询后果中增添列
10.2.2 挑选行
(1) 利用WHERE 子句
用户在查询数据库时,常常并不需求理解全部信息,而只需求此中一部份满意某些条件的信息.在这种情形下就需求在SELECT 语句中加入条件,以挑选数据行,这时就用到WHERE 子句.WHERE 子句中的条件是由表达式以及逻辑联合词AND、 OR、NOT 等构成.
例10-4: 查询工资介于2000 元和3000 元之间的员工姓名.
use pangu
select e_name
from employee
where e_wage between 2000 and 3000
运行后果以下:
e_name
--------------------
王二
伍将
(2 row(s) affected)
(2) 利用DICTINCT 关键字
用户在对数据库举行查询时,会呈现反复后果,这时就需求利用DISTINCT 关键字消除反复部份.
例10-5: 列出工资大于7000 的员工所属的部门编号.
use pangu
select distinct dept_id
from employee
where e_wage > 7000
运行后果以下:
dept_id
-------
1001
1005
(2 row(s) affected
(3) 利用IN 关键字
在利用WHERE 子句举行查询时,若条件表达式中呈现若干条件相同的情形,就会使表达式显得冗长,不便于用户利用,这时可用IN 关键字来简化.
例10-6: 查询在编号为‘1001’ 和‘1002’ 的部门中工作的员工姓名.
use pangu
select e_name
from employee
where dept_id in (’1001’,’1002’)
运行后果以下:
e_name
--------------------
张三
李四
......
[1] [2] 下一页
(4) 利用通配符
在WHERE 子句中可以利用谓词LIKE 来举行字符串的匹配查抄,此中将大量利用我们在Transact-SQL 语言底子中介绍到的通配符.
假如用户要查找的数据中本身就包含了通配符,如"SQL_Mail", 就需求利用逃逸字符来辨别通配符与实际存在的字符.其格局以下;
LIKE ‘字符匹配串’ ESCAPE ‘逃逸字’
10.2.3 对查询后果排序
(1) 利用ORDER 子句
当用户要对查询后果举行排序时就需求在SELECT 语句中加入ORDER BY 子句.在ORDER BY 子句中可以利用一个或多个排序要求,其优先级次序为从左到右.
例10-9: 查询工作级别为‘2’ 的员工姓名,查询后果按工资排序.
(2) 选取前几行数据
在SELECT 语句中利用TOP n 或TOP n PERCENT, 来选取查询后果的前n 行或前百分之n 的数据.此语句常常和ORDER 子句一同利用.
例10-11: 查询工资最高的三名员工的姓名和工资.
use pangu
select top 3 e_name, e_wage
from employee
order by e_wage desc
运行后果以下:
e_name e_wage
-------------------- ---------------------
张三 8000.0000
大师傅 7500.0000
张龙 7000.0000
(3 row(s) affected)
10.2.4 查询后果分组
(1) 利用GROUP 子句
当用户要对查询后果举行分组时,就需求在SELECT 语句中加入GROUP BY 子句.
例10-12: 查询工作级别为‘2’ 的员工姓名,查询后果按部门分组;
(2) 利用WITH { CUBE | ROLLUP }选项
利用这两个选项可以分外返回按组统计的数据行.与CUBE 差别的是,ROLLUP 选项只返回最高层的分组列(即,第一个分组列)的统计数据.读者可以从下面的例子中解析二者的差别.
例10-13 :查询公司编号、公司所订购的产品编号和应支付的金额,查询后果按公司编号和产品编号分组(本例中利用了统计函数,关于其利用请拜见下一小节).
(3) 利用HAVING 子句
HAVING 子句用来挑选特别的组,它将组的一些属性与常数值举行对比,假如一个组满意HAVING 子句中的逻辑表达式,它便可以包含在查询后果中.
注意:
在SELECT语句中WHERE、GROUP BY、HAVING子句和统计函数的履行次序以下:WHERE子句从数据源中去掉不符合
其搜索条件的数据行;GROUP BY 子句汇集数据行到各个组中;统计函数为各个组计算统计值;HAVING子句去掉不符合共组搜索条件的各组数据行.
10.2.5 利用统计函数
在SELECT 语句中利用统计函数,可以得到很多有效的信息.
上一页 [1] [2]
以上是“SQL Server数据库技术(56)[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:本文地址: | 与您的QQ/BBS好友分享! |