SELECT语句
作用: 用于检索数据
用于: DSQL, ESQL, PSQL
全局语法:
SELECT
[WITH [RECURSIVE] <cte> [, <cte> ...]]
SELECT
[FIRST m] [SKIP n]
[DISTINCT | ALL] <columns>
FROM
source [[AS] alias]
[<joins>]
[WHERE <condition>]
[GROUP BY <grouping-list>
[HAVING <aggregate-condition>]]
[PLAN <plan-expr>]
[UNION [DISTINCT | ALL] <other-select>]
[ORDER BY <ordering-list>]
[ROWS m [TO n]]
[FOR UPDATE [OF <columns>]]
[WITH LOCK]
[INTO <variables>]
<variables> ::= [:]varname [, [:]varname ...]
描述
SELECT 语句从数据库中检索数据,交给于应用程序或封闭的SQL语句。数据返回零行或更多行,在每行包含一个或多个列或字段。返回的行的总数是语句的结果集。
SELECT 语句的唯一的强制性部分是 ︰
• SELECT关键字后跟一个列列表,这部分指定您想要检索的。
• FROM关键字后跟一个可选择对象,这个告诉引擎想从哪儿取得数据。
在其最基本的形式中,SELECT检索列的数目从单个表或视图中,像这样:
select id, name, address
from contacts
或取回所有列
select * from sales
在实际情况中,检索的行往往会受到一个 WHERE 子句的限定.结果集可能会按ORDER BY子句排序,以及FIRST,SKIP或ROWS可能会进一步限定输出的行数.列列表可能包含所有类型的表达式而不是只是列名称,来源不必是一个或视图:它也可能是派生的表、公用表表达式 (CTE) 或选择存储过程 (SP)。多个源可以联接用一个JOIN和多个结果集可以联结用一个UNION。
以下各节讨论有效的SELECT子句和它们的用法详细信息。