当前位置: 首页 > 图文教程 > 数据库 > MSSQL > 全面接触SQL语法(5)

MSSQL
开源MySQL公司停止提供企业版源代码tar包
细化解析:MySQL+Webmin轻松创建数据库
用mysql做站点时怎样记录未知错误的发生
SQL数据库操作类
如何利用SQL Server数据库快照形成报表
SQL Server中应当怎样得到自动编号字段
SQL Server数据库连接中常见的错误分析
详细讲解SQL Server数据库的文件恢复技术
轻松掌握SQL Server数据库的六个实用技巧
SQL Server数据库涉及到的数据仓库概念
深入了解SQL Server 2008 商业智能平台
剖析SQL Server 事务日志的收缩和截断
如何在不同版本的SQL Server中存储数据
怎样缩小SQL Server数据库的日志文件
SQL Server中两种修改对象所有者的方法
轻松掌握SQL Server存储过程的命名标准
怎样从旧版本SQL Server中重新存储数据
快速掌握如何使用SQL Server来过滤数据
教你快速掌握两个SQL Server的维护技巧
有效地使用 SQL事件探查器的提示和技巧

MSSQL 中的 全面接触SQL语法(5)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 96 ::
收藏到网摘: n/a

  BETWEEN...AND 运算符

  决定某一人数值是否介于特定的范围之内,此运算符只可以用在SQL的语句中。


expr[Not]BETWEEN value1 AND value2
expr
指定要加以计算的字段与表达式的组合。
value1,value2
所指明的数值范围。
例如:
若是要从职员表格查询出所有年龄介于25-30岁的员工,可以利用下面的程序来做。
SELECT 姓名,年龄 BETWEEN 25 AND 30
FROM 职员表格;


 
  LIKE 操作数

  用来将一字符串与另一特定字符串样式(pattern)比较,并将符合该字符串样式的记录过滤出来。


expression LIKE "pattern"
expression
使用在WHERE条件子句,SQL表达式。
pattern
用以比较的字符串样式。
例如:
若是你要查询出所有以“李”为首的姓氏,可以利用下面的式子。
Like "李*"
LIKE操作数的多种范例:
1、多个字符:
(1)"a*a"
可筛选:"aa","aBa","aBBBa",不能筛选:"aBC"
(2)"*ab*"
可筛选:"abc","AABB","Xab",不能筛选:"aZb","bac"
2、特殊字符:
"a“*”a"
可筛选:"a*a",不能筛选:"aaa"
3、单一字符:
"a?a"
可筛选:"aaa","a3a","aBa",不能筛选:"aBBBa"
4、单一数字:
"a#a"
可筛选:"a0a","a1a","a2a",不能筛选:"aaa","a10a"
5、字符范围:
"“a-z”"
可筛选:"f","p","j",不能筛选:"2","&"
6、指定字符以外部范围:
"“!a-z”"
7、指定非数字:
"“!0-9”"
可筛选:"A","a","&","~",不能筛选:"0","1","9"
8、组合式结构:
"a“!b-m”#"
可筛选:"An9","az0","a99",不能筛选:"abc","aj0"



  SQL数字函数

  1、AVG:算数平均数

  AVG(expr)

  expr

  字段名称或表达式。


  例如:

  若要计算职员身高超过165厘米的职员平均身高,可以利用下面的SQL语句来完成。

  SELECT Avg(身高)

  AS 平均身高

  FROM 职员表格 WHERE 身高>165;

  2、COUNT:计算记录条数

  COUNT(expr)

  expr


  字段名称或表达式。

  例如:

  若是要统计出业务部门的职员人数,并查询出职员的姓名,可以利用下面的程序。

  SELECT Count(姓名) AS 职员姓名

  FROM 职员表格

  WHERE 部门名称='业务部';

  3、FIRST与LAST:返回某字段的第一条数据与最后一条数据。

  FIRST(expr)


  LAST(expr)

  expr

  字段名称或表达式。

  例如:

  若是要找出货品数量字段的第一条数据与货品价格字段的最后一条数据时,可以利用下面的查询方式。

  SELECT FIRST(货品数量),LAST(货品价格)


  FROM 订单表格

  4、MAX,与MIN:返回某字段的最大值与最小值。

  用法同FIRST与LAST。

  5、SUM:返回某特定字段或是运算的总和数值。

  SUM(expr)

  expr

  字段名称或表达式。


  例如:

  要计算出货品总价,可使用下面的程序。


  SELECT

  Sum(单位价格*货品数量)

  AS 货品总价 FROM 订单表格

  多层SQL查询

  顾名思义,多层的SQL查询的便在于:“在一个SQL语句中可以包含另一个SQL查询语句,形成内部嵌套的查询类型。”

comparison[ANY|ALL|SOME](sqlstatement)
expression[NOT]IN (sqlstatement)
[NOT]EXISTS(sqlstatement)
comparison
将表达式与内层查询的结果比较的操作。
expression
对内层查询的结果作搜索的表达式。
sqlstatement
为SELECT语句构成的SQL查询,必须用()将该语句括起来。



  例如:

  我们先从订单表格当中,查询出所有的单位,再将产品表格中的单位与的一一对比,查询出所有高于订单表格的单位价格的记录。

  SELECT * FROM 产品表格

  WHERE 单位价格>ANY (SELECT 单位价格 FROM 订单表格 WHERE 折扣>=.25);