51Testing软件测试论坛

标题: 测试sql基础(两个附件内容一样) [打印本页]

作者: wwllive    时间: 2009-6-15 07:44
标题: 测试sql基础(两个附件内容一样)
测试中的SQL语句
1)        要知道基本的检索语句,
SELECT < column list >
[FROM < source table(s) >]
[WHERE < restrictive condition >]
[GROUP BY < column name or expression using a column in the SELECT list >]
[HAVING < restrictive condition based on the GROUP BY results >]
[ORDER BY< column list >
  SELECT表示执行的是检索操作,仅仅是读取数据信息而不是修改数据信息。所选择的内容由后面的表达式或列名列表确定。
  FROM语句指定要读取的数据所在的一张表或几张表。
  WHERE子句用来设定返回记录的限制条件,它应用于每一行。这些限制条件可以使用=,>,<,>=,<=,!=,!>,!<,AND,OR,NOT,BETWEEN,LIKE,IN,ALL,ANY,SOME,EXISTS这些运算符。
  GROUP BY子句用来统计信息。一旦使用的GROUP BY子句,SELECT列表中的每一列必须为GROUP BY子句分组的列或者是列的统计。常用的统计函数有AVG,MIN/MAX,COUNT(*)。
  HAVING子句也是用来设定限制条的,不过它应用于分组的统计值。
  ORDER BY子句用来定义返回数据的排列顺序,它可以按照FROM子句的表中的任一列或多列来定义输出顺序。
2)        连接语句在多表检索中非常重要。
连接语句即JOIN子句,是将来自两个表的信息放置在一个结果集中。它有四种形式:
  内部连接
  外部连接
  完全连接
  交叉连接
  连接根据一个或几个相同的字段将记录匹配在一起,内部连接仅返回那些存在字段匹配的记录,外部连接中LEFT OUTER JOIN包含的信息来自左侧的表,RIGHT JOIN包含的信息来自右侧的表,完全连接返回所有匹配的记录,交叉连接返回的是JOIN两侧表记录的笛卡尔积。
  有一个特别重要的运算符UNION。它将一个查询返回的数据附加到另一个查询结果的末尾。不过有以下注意事项:
(1)        所有UNION的查询必须在SELECT列表中有相同的列数。
(2)        UNION返回的结果集的标题仅从第一个查询获得。
(3)        查询中对应列的数据类型必须隐式一致。
(4)        查询的默认返回选项为DISTINCT。
3)        在测试中为了,SQL检索语句简便,也会用到自定义函数:
  CREATE FUNCTION [< schema name >,]< function name >
  ([< @parameter name > [AS] [< schema name >,]< scalar data type >[=< default value >])
[,…n]
BEGIN
  [< function statement>]
  {RETURN < type as defined in RETURNS clauses >|RETURN (< SELECT statement>)}
END}[;]
4)        还有一些特别重要的已定义函数:
  在检索条件和检索项目中经常会用到数据类型转换,数据类型转换的函数是CAST和CONVERT,它们的语法分别是
    CAST(expression as data_type),
    CCONVERT(data_type,expression[,style])
  还有一个特别重要,方便,而且常用的函数ISNULL函数
    ISNULL(< expression to test >,< replacement value if null >)
  它的第一个参数如果是NULL,就返回第二个参数的值,如果不是NULL,则返回第一个参数的值。

作者: qiguojie    时间: 2009-6-15 11:58
好贴,学习一下。。。
作者: wwllive    时间: 2009-6-15 13:01
标题: 回复 2# 的帖子
多谢斑竹捧场阿!!!
作者: wwllive    时间: 2009-6-15 13:08
不过还不全,有时间再整理,补充。
作者: sn_asd520    时间: 2009-6-15 15:58
现在正在学SQL呢,正好用到,谢谢了

我也分享一个在线学习SQL的网站
http://www.sqlzoo.cn
作者: 小鱼oO    时间: 2009-6-29 13:37
标题: 回复 5# 的帖子
很不错哦
作者: huijuan0501    时间: 2009-9-24 18:40
呵呵 收藏了
作者: huangJenny    时间: 2009-10-10 17:48
好!
不错不错
加油
学习
作者: weiyizhi2    时间: 2009-10-28 18:21
标题:
正在学习,非常感谢!
作者: peag    时间: 2010-5-8 10:29
amrk
作者: peag    时间: 2010-5-8 10:29
晕,写错了应该是mark
作者: 齐翼双飞    时间: 2011-3-16 15:32
xiexie
作者: 琪琪_1111    时间: 2011-4-8 20:24
好贴
作者: 琪琪_1111    时间: 2011-4-8 20:24
好贴




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2