火冰狐 发表于 2017-12-14 06:24:46

SQL Server之关键字

  示例数据库结构:

  数据库中的数据:

  1.LIKE
  通配符:
通配符说明示例%包含零个或多个字符的任意字符串where>(1)%,搜索张姓的人:
  (2)_,搜索张姓的人:
  说明,此处为了说明“_”使用,采用了三种通配符的对比,对于搜索名字‘张三’:

[*]‘%’匹配任意多的字符
[*]‘_’之匹配单个字符,此处name属性是20个字符长度,因故是匹配不出的,若想匹配需要19个‘_’

  (3)[],搜索名字包含“三四五”的名字:
  注:表示可选的6个字母,等同于

  (4)[^],搜索年龄的结尾不包含2的人:
  说明:此处体现%与_的差别,%匹配任意多个字符,检索出的结果可能跟实际并不匹配

  2 关键字BETWEEN:

[*]between...and ...
[*]not between...and...

  3 关键字 IS (NOT) NULL
  在where子句中不能使用比较运算符(=)对空值进行判断,只能使用IS (NOT) NULL对空值进行查询。

  4 关键字IN
  关键字IN用来指定列表搜索的条件,确定指定的值是否与子查询或列表中的值相匹配
  查找年龄是21,22,23的人:

  5.关键字 ALL、SOME、ANY

[*]ALL:比较标量值和单列集中的值,与比较运算符和子查询一起使用。>ALL表示大于条件的每一个值,即大于最大值。
  寻找出年龄比“张三”和“丫蛋”都大的人。


[*]SOME|ANY:比较标量值和单列集中的值。SOME和ANY是等效的,与比较运算符和子查询一起使用。
  >ANY:表示至少大于条件的一个值。换句话说,就是大于最小值

  6.关键字 EXISTS
  关键字EXISTS用于指定一个子查询,测试行是否存在。exist往往能实现和in同样的效果

  7.关键字GROUP BY
  关键字GROUP BY 表示按一个或多个列表达式的值将一组选定行组合成一个摘要行集。针对每一组返回一行。

  group by函数的常见错误,显示的内容必须包含在group by才行

  8.关键字Having
  指定组或聚合的搜索条件。HAVING只能与select语句一起使用。Having通常在 group by子句中使用。如果不使用group by子句,则having的行为与where字句一样。

  9 关键字ORDER BY

  10 关键字COMPUTE
  生成合计作为附加的汇总列出现在结果集的最后。当与BY一起使用时,COMPUTE子句在结果集内生成控制中断和小计。
行聚合行数描述AVG数值表达式中所有值的平均值COUNT选定的行数MAX表达式中的最高值MIN表达式中的最低值STDEV表达式中所有值的标准差STDEVP表达式中所有值的总体标准偏差SUM数值表达式中所有值的和VAR表达式中所有值的方差VARP表达式中所有值的总体方差
  11 关键字DISTINCT
  关键字DISTINCT用来从select语句的结果集中去掉重复的记录。

  12 关键字TOP
页: [1]
查看完整版本: SQL Server之关键字