文学范文

www.hf0688.com文学范文

【查询语句】测试人员要掌握的基本的SQL语句word免费下载

发布时间:2019-05-14 编辑 :本站 / 12次点击
您现在的位置:文学范文 > 西方诗歌 > 正文
TAG:

目录一、DDL数据定义语言(CREATE,ALTER,DROP,DECLARE)二、DML数据操纵语言(SELECT,DELETE,UPDATE,INSERT)三、DCL数据控制语言(GRANT,REVOKE)四、下半部分内容(主要是PLSQL:函数,存储过程,事务等)说明:本文档的使用对象是对SQL有一些了解的软件测试人员,我只是把我知道的知识结合网上的资料进行二次总结,不正之处望多请教。 本文档配置附有SQL范例脚本。

一、DDL数据定义语言首先,简要介绍基础语句,作为测试人员一般测试时,已经由数据库设计师建好了数据库,数据库设计师可能也不用语句的方式来建表,但我们应该能看懂各语句的使用格式,语句的含义,有兴趣再作深入了解。 、创建数据库CREATEDATABASEdatabasename、删除数据库DROPDATABASEdbname,dbname…、备份数据库创建备份数据的deviceUSEmasterEXECspaddumpdevicedisk,testBack,c:mssqlbackupMyNwinddat开始备份BACKUPDATABASEpubsTOtestBack、创建表createtabletabname(coltypenotprimarykey,coltypenot,)例如:CREATETABLES(SNOCHAR()NOT,SNVARCHAR(),AGEINT,SEXCHAR()DEFAULT男,DEPTVARCHAR())根据已有的表创建新表:A:createtabletabnewliketabold(使用旧表创建新表)B:createtabletabnewasselectcol,col…fromtabolddefinitiononly、删除表droptabletabname、增加字段AltertabletabnameADD列名数据类型|NOT、修改字段ALTERTABLE表名ALTERCOLUMN列名数据类型|NOT、删除字段ALTERTABLE表名DROPCOLUMN列名数据类型|NOT、添加主键Altertabletabnameaddprimarykey(col)、删除主键Altertabletabnamedropprimarykey(col)、创建索引createuniqueindexidxnameontabname(col…)、删除索引dropindexidxname注:索引是不可更改的,想更改必须删除重新建。 、创建视图createviewviewnameasselectstatement、删除视图dropviewviewname二、DML数据操纵语言、数据查询数据查询是数据库中最常见的操作。 在本文档里将作重点介绍。 SQL语言提供SELECT语句,通过查询操作可得到所需的信息。

SELECT语句的一般格式为:SELECT〈列名〉{,〈列名〉}FROM〈表名或视图名〉{,〈表名或视图名〉}WHERE〈检索条件〉GROUPBY列名HAVING条件表达式ORDERBY列名ASC|DESCSELECT语句的执行过程是:根据WHERE子句的检索条件,从FROM子句指定的基本表或视图中选取满足条件的元组,再按照SELECT子句中指定的列,投影得到结果表。

如果有GROUP子句,则将查询结果按照列名相同的值进行分组。 如果GROUP子句后有HAVING短语,则只输出满足HAVING条件的元组。 如果有ORDER子句,查询结果还要按照列名的值进行排序。

、查询指定列SELECT列名FROM表名或视图名、查询全部列SELECT*FROM表名或视图名或SELECT全部列名FROM表名或视图名、取消相同取值的行在查询结果中有可能出现取值完全相同的行了。 SELECTDISTINCT列名FROM表名或视图名、比较大小比较运算符有=,,=,=,,,!,!NOT上述比较运算符SELECT列名FROM表名或视图名WHERE列名比较运算符比较的值、多重条件查询当WHERE子句需要指定一个以上的查询条件时,则需要使用逻辑运算符AND、OR和NOT将其连结成复合的逻辑表达式。

其优先级由高到低为:NOT、AND、OR,用户可以使用括号改变优先级。

SELECT列名FROM表名或视图名WHERE条件AND条件OR条件…、确认范围查询用于确定范围运算符有:BETWEEN…AND…和NOTBETWEEN…AND…SELECT列名FROM表名或视图名WHERE列名NOTBETWEEN值AND值这与下等价SELECT列名FROM表名或视图名WHERE列名=值AND列名=值SELECT列名FROM表名或视图名WHERE列名值OR列名值、确认集合确定集合符号:IN,NOTINSELECT列名FROM表名或视图名WHERE列名NOTIN(常量,常量,…,常量n)字符匹配查询字符匹配查询符号:LIKE,NOTLIKESQLServer支持如下四种通配符:(下划线):匹配任意一个字符(百分号):匹配O个或多个字符:匹配中的任意一个字符。

如acdg表示匹配a或c或d或g,如果中的字符是有序的,则可以使用连字符一来简化中的内容,例如abcde可简写为:ae^:不匹配中的任意一个字符。 如^acdg表示不匹配a、c、d、g,如果^中的字符是有序的,也可以使用简化形式例如^abcde可简写为:^ae。 SELECT列名FROM表名或视图名WHERE列名NOTLIKE匹配字符串空值查询空值不同于零和空格,它不占任何存储空间。 判断某个值是否为值,不能使用普通的比较运算符(一、!一等),而只能使用专门的判断值的子句来完成。

SELECT列名FROM表名或视图名WHERE列名ISNOT常用库函数及统计汇总查询常用的库函数AVG:按列计算平均值SUM:按列计算值的总和MAX:求一列中的最大值MIN:求一列中的最小值COUNT:按列值计算个数总数:selectcount(field)astotalcountfromtable求和:selectsum(field)assumvaluefromtable平均:selectavg(field)asavgvaluefromtable最大:selectmax(field)asmaxvaluefromtable最小:selectmin(field)asminvaluefromtable注:SQL规定,当使用计算函数时,列名不能与计算函数一起使用(除非他们出现在其他集合中)。 例如查询年龄最大的学生的姓名和年龄,如下写法是错误的:SELECT姓名,MAX(年龄)FROMStudent注:计算函数不能出现在WHERE子句中。

例如查询年龄最大的学生的姓名如下写法是错误的:SELECT姓名FROMStudentWHERE年龄=MAX(年龄)正确的命令应为:SELECT姓名,年龄FROMStudentWhere年龄=(selectmax(年龄)fromstudent)分组查询SELECT列名FROM表名或视图名GROUPBY分组依据列,…nHAVING组提取条件注:分组依据列不能是text、ntext、image和bit类型的列。

注:有分组时,查询列表中的列只能取自分组依据列(计算函数中的列除外)对查询结果进行排序SELECT列名FROM表名或视图名ORDERBY列名ASClDESC,…n数据表连接查询A、INNERJOIN:这是最普通的联接类型。 只要在这两个表的公共字段之中有相符值,内部联接将组合两个表中的记录。 SELECTfieldsFROMtableINNERJOINtableONtablefieldcompoprtablefieldANDONtablefieldcompoprtablefield)ORONtablefieldcompoprtablefield)B、leftouterjoin:左外连接(左连接):结果集包括连接表的匹配行,也包括左连接表的所有行。 SQL:selectaa,ab,ac,bc,bd,bffromaLEFTOUTJOINbONaa=bcC:rightouterjoin:右外连接(右连接):结果集包括连接表的匹配连接行,也包括右连接表的所有行。 D:fullouterjoin:全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。

使用TOP限制结果集使用TOP谓词时注意最好与ORDERBY子句一起使用,因为这样的前几名才有意义。

但当使用WITHTIES时,要求必须使用ORDERBY子句。

TOP谓词写在SELECT单词的后边,查询列表的前边。

使用TOP谓词的格式为:TOPnpercentwithties其中:n为非负整数。 TOPn:表示取查询结果的前n行TOPnpercent:表示取查询结果的前n行Withties:表示包括并列的结果。

将查询结果存入表中INTO子句的语法格式为:INTO新表名INTO子句跟在SELECT子句之后、FROM子句之前。

SELECT列名INTO新表名FROM。 新表名是要存放查询结果的表名,SELECTINTO语句包含两个操作:首先按查询列表创建新表,然后执行查询语句,并将结果保存到新表中。

用INTO子句创建的新表可以是永久表,也可以是临时表。 临时表又分为两种:局部临时表和全局临时表。 局部临时表要在表名前加#,它只能用在当前的连接中全局临时表要在表名前加##,它的生存期为创建全局临时表的连接的生存期合并查询。