语句与其子句的详解

上传人:xiao****1972 文档编号:84782565 上传时间:2019-03-04 格式:DOC 页数:14 大小:60.95KB
返回 下载 相关 举报
语句与其子句的详解_第1页
第1页 / 共14页
语句与其子句的详解_第2页
第2页 / 共14页
语句与其子句的详解_第3页
第3页 / 共14页
语句与其子句的详解_第4页
第4页 / 共14页
语句与其子句的详解_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《语句与其子句的详解》由会员分享,可在线阅读,更多相关《语句与其子句的详解(14页珍藏版)》请在金锄头文库上搜索。

1、SELECT 语句与其子句的详解闲来没事做,整理了一下SELECT语句的一点用法,不过这是SQL SERVER 2000 下的,整体的语法和informix 的SQL语法差不多,仅供参考,对于初学SQL语句的新手来说还是有帮助的,嘿嘿 其实我就是新手,以后还请各位大侠多多执教! SELECT从数据库中检索行,并允许从一个或多个表中选择一个或多个行或列。虽然 SELECT 语句的完整语法较复杂,但是其主要的子句可归纳如下: SELECT select_list INTO new_table FROM table_source WHERE search_condition GROUP BY gro

2、up_by_expression HAVING search_condition ORDER BY order_expression ASC | DESC 可以在查询之间使用 UNION 运算符,以将查询的结果组合成单个结果集。语法SELECT statement := ORDER BY order_by_expression | column_position ASC | DESC ,.n COMPUTE AVG | COUNT | MAX | MIN | SUM ( expression ) ,.n BY expression ,.n FOR BROWSE | XML RAW | AUTO

3、 | EXPLICIT , XMLDATA , ELEMENTS , BINARY base64 OPTION ( ,.n ) := | ( ) UNION ALL query specification | ( ) .n := SELECT ALL | DISTINCT TOP integer | TOP integer PERCENT WITH TIES INTO new_table FROM ,.n WHERE GROUP BY ALL group_by_expression ,.n WITH CUBE | ROLLUP HAVING 由于 SELECT 语句的复杂性,下面按子句说明详细

4、的语法元素和参数: SELECT 子句指定由查询返回的列。语法SELECT ALL | DISTINCT TOP n PERCENT WITH TIES := * | table_name | view_name | table_alias .* | column_name | expression | IDENTITYCOL | ROWGUIDCOL AS column_alias | column_alias = expression ,.n 参数ALL指定在结果集中可以显示重复行。ALL 是默认设置。DISTINCT指定在结果集中只能显示唯一行。为了 DISTINCT 关键字的用途,空值

5、被认为相等。TOP n PERCENT指定只从查询结果集中输出前 n 行。n 是介于 0 和 4294967295 之间的整数。如果还指定了 PERCENT,则只从结果集中输出前百分之 n 行。当指定时带 PERCENT 时,n 必须是介于 0 和 100 之间的整数。如果查询包含 ORDER BY 子句,将输出由 ORDER BY 子句排序的前 n 行(或前百分之 n 行)。如果查询没有 ORDER BY 子句,行的顺序将任意。WITH TIES指定从基本结果集中返回附加的行,这些行包含与出现在 TOP n (PERCENT) 行最后的 ORDER BY 列中的值相同的值。如果指定了 ORD

6、ER BY 子句,则只能指定 TOP .WITH TIES。为结果集选择的列。选择列表是以逗号分隔的一系列表达式。 * 指定在 FROM 子句内返回所有表和视图内的所有列。列按 FROM 子句所指定的由表或视图返回,并按它们在表或视图中的顺序返回。table_name | view_name | table_alias.* 将 * 的作用域限制为指定的表或视图。column_name 是要返回的列名。限定 column_name 以避免二义性引用,当 FROM 子句中的两个表内有包含重复名的列时会出现这种情况。例如,Northwind 数据库中的 Customers 和 Orders 表内都有

7、名为 ColumnID 的列。如果在查询中联接这两个表,可以在选择列表中将客户 ID 指定为 Customers.CustomerID。expression 是列名、常量、函数以及由运算符连接的列名、常量和函数的任意组合,或者是子查询。 IDENTITYCOL 返回标识列。有关更多信息,请参见 IDENTITY(属性)、ALTER TABLE 和 CREATE TABLE。 如果 FROM 子句中的多个表内有包含 IDENTITY 属性的列,则必须用特定的表名(如 T1.IDENTITYCOL)限定 IDENTITYCOL。 ROWGUIDCOL 返回行全局唯一标识列。 如果在 FROM 子句

8、中有多个表具有 ROWGUIDCOL 属性,则必须用特定的表名(如 T1.ROWGUIDCOL)限定 ROWGUIDCOL。 column_alias 是查询结果集内替换列名的可选名。例如,可以为名为 quantity 的列指定别名,如Quantity或Quantity to Date或Qty。 别名还可用于为表达式结果指定名称,例如: USE NorthwindSELECT AVG(UnitPrice) AS Average PriceFROM Order Detailscolumn_alias 可用于 ORDER BY 子句。然而,不能用于 WHERE、GROUP BY 或 HAVING

9、子句。如果查询表达式是 DECLARE CURSOR 语句的一部分,则 column_alias 不能用在 FOR UPDATE 子句中。 INTO 子句创建新表并将结果行从查询插入新表中。用户若要执行带 INTO 子句的 SELECT 语句,必须在目的数据库内具有 CREATE TABLE 权限。SELECT.INTO 不能与 COMPUTE 子句一起使用。有关更多信息,请参见事务和显式事务。 通过在 WHERE 子句中包含 FALSE 条件,可以使用 SELECT.INTO 创建没有数据的相同表定义(不同表名)。语法 INTO new_table 参数new_table根据选择列表中的列和

10、 WHERE 子句选择的行,指定要创建的新表名。new_table 的格式通过对选择列表中的表达式进行取值来确定。new_table 中的列按选择列表指定的顺序创建。new_table 中的每列有与选择列表中的相应表达式相同的名称、数据类型和值。当选择列表中包含计算列时,新表中的相应列不是计算列。新列中的值是在执行 SELECT.INTO 时计算出的。在此次发布的 SQL Server 版本中,select into/bulkcopy 数据库选项对是否可以使用 SELECT INTO 创建永久表没有影响。对包括 SELECT INTO 在内的某些大容量操作的记录量,取决于对数据库有效的恢复模式

11、。有关更多信息,请参见使用恢复模型。在以前发布的版本中,如果设置了 select into/bulk copy,则可用 SELECT INTO 创建永久表。select into/bulk copy 用于向后兼容,但在以后的版本中可能不支持该选项。有关更多信息,请参考恢复模式和向后兼容性主题以及 ALTER DATABASE 主题。 FROM 子句指定从其中检索行的表。需要 FROM 子句,除非选择列表只包含常量、变量和算术表达式(没有列名)。有关更多信息,请参见 FROM。语法 FROM ,.n := table_name AS table_alias WITH ( ,.n ) | view

12、_name AS table_alias | rowset_function AS table_alias | OPENXML | derived_table AS table_alias ( column_alias ,.n ) | := ON | CROSS JOIN | := INNER | LEFT | RIGHT | FULL OUTER JOIN参数指定用于 SELECT 语句的表、视图、派生表和联接表。 table_name AS table_alias 指定表名和可选别名。view_name AS table_alias 指定名称、视图和可选别名。rowset_function AS table_alias 是行集函数名和可选别名。有关行集函数列表的更多信息,请参见行集函数。OPENXML 在 XML 文档上提供行集视图。有关更多信息,请参见

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号