SELECT 子句 (SQL Server Compact)

指定查询所返回的列。

语法

SELECT [ ALL | DISTINCT ] TOP (expression) < select_list > 
< select_list > ::= 
   { * 
   | { table_name | table_alias }.* 
   | { column_name | expression } [ [ AS ] column_alias ] 
   } [ ,...n ] 

参数

  • ALL
    指定结果集中可以出现重复的行。默认值为 ALL。

  • DISTINCT
    指定结果集中不能出现重复的行。空值视为与 DISTINCT 关键字等效。

  • TOP (expression)
    指示仅从查询结果集中返回前面的指定数量的行或行的百分比。expression 可以是一个数字或行的百分比。

    可以在 SELECT、INSERT、UPDATE 和 DELETE 语句中使用 TOP 子句。在 INSERT、UPDATE 和 DELETE 语句中,必须将 TOP 中的分隔表达式括起来。为了向后兼容,SELECT 语句中支持使用不带括号的 TOP 表达式,但我们建议不要这样做。有关更多信息,请参阅 TOP (SQL Server Compact)

  • < select_list>
    选择将显示于结果集中的列。选择列表是用逗号分隔的一系列表达式。

  • *
    指定应返回 FROM 子句中所有表的所有列。这些列将按 FROM 子句中指定的表返回,并且按其在表中的出现顺序排列。

  • table_name| table_alias.*
    将 * 的范围限定为指定的表。要求返回 FROM 子句中所指定表的所有列。这些列将按照其在表中的出现顺序返回。如果在 FROM 子句中为表指定了别名,则必须使用别名。在这种情况下使用表名无效。

  • column_name
    要返回的列的名称。应对 column_name 进行限定以防止产生引用歧义,比如当 FROM 子句中的两个表具有同名的列时,便可能产生引用歧义。例如,如果某个数据库中的“A”表和“B”表都具有名为“itemID”的列,并且两个表通过一个查询进行联接,那么在 SELECT 列表中必须将 itemID 指定为“A.itemID”和“B.itemID”。如果提供了表的别名,则必须使用表的别名来限定列名。否则,应使用完整表名。

  • expression
    列名、常量、函数,或者通过一个或多个运算符连接起来的列名、常量和函数的任意有效组合。

  • column_alias
    用于在查询结果集中取代列名的另一名称。例如,可以为名为“quantity”的列指定“Quantity”、“Quantity to Date”或“Qty”等别名。别名还可以用来为表达式的结果指定名称,例如:

    SELECT AVG([Unit Price]) AS [Average Price] FROM [Order Details]
    

    备注

    column_alias 可以用在 ORDER BY 子句中,但不能用在 WHERE、GROUP BY 或 HAVING 子句中。