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

MSSQL
mssql 两种数据插入方式
mssql @@ERROR 使用
sqlserver 数据库日志备份和恢复步骤
SQL Server日志过大会影响查询结果
SQLserver 实现分组统计查询(按月、小时分组)
SQL语句查询是否为空 =null及null
对有insert触发器表取IDENTITY值时发现的问题
SQL SERVER 查询正在实行的SQL语句
sql 随机抽取几条数据的方法 推荐
sql 多条件组合查询,并根据指定类别找出所有最小子类别的SQL语句备忘
Java 实现连接sql server 2000
SQL Server 不存在或访问被拒绝(转)
分页查询 效率最高
sqlserver 系统存储过程 中文说明
sql 多表连接查询
SQL SERVER 自增列
丢失的数据忘记备份的处理方法[图文]
SqlServer 序号列的实现方法
MsSql 存储过程分页代码 [收集多篇]
SQLServer 数据库中如何保持数据一致性

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 148 ::
收藏到网摘: 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);