SELECT(Azure 流分析)
从输入流中检索行,并允许从 Azure 流分析中的一个或多个输入流中选择一个或多个列。 与 SELECT 表达式一起使用的主要子句可归纳如下:
[ WITH <Result_Set_name>]
SELECT select_list
FROM input_source [TIMESTAMP BY column_name ] [PARTITION BY column_name ]
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
语法
SELECT <select_list>
<select_list> ::=
{
*
| { input_name | input_alias }.*
| {
[ { input_name | input_alias }. ]
{ column_name }
| expression [ [ AS ] column_alias ]
}
| column_alias = expression
} [ ,...n ]
参数
*
指定应返回 FROM 子句中所有输入流中的所有列。 输入源将按 FROM 子句中指定的列在传入流中存在的顺序返回这些列。
input_name | input_alias.*
限制 * 的作用域为指定的输入名称。
column_name.*
对于类型为 Record 的列, (复杂对象) 将所有嵌套字段作为单个列返回。
将忽略 * 表达式中的列,其名称与同一 SELECT 语句中以前投影的列冲突。 SELECT 语句左侧的列优先于右侧的列。
column_name
要返回的列名。 限定 column_name 以防止引用不明确,就像 FROM 子句中的两个输入源具有名称重复的列时会发生的情况。
expression
常量、函数以及由一个或多个运算符连接的列名、常量和函数的任意组合,或者是子查询。
column_alias
查询结果集内替换列名的可选名。 例如,可以为名为 quantity 的列指定 Quantity、[Quantity to Date] 或 Qty 等别名。 别名还用于指定表达式结果的名称。 column_alias不能在 WHERE、GROUP BY 或 HAVING 子句中使用。
备注
若要访问使用需要转义的字符的字段或属性,可以使用双引号: SELECT "[my][Field]" AS myField ...
。
示例
SELECT TollId, EntryTime AS VehicleEntryTime, LicensePlate, State, Make, Model, VehicleType, VehicleWeight, Toll, Tag
FROM TollTagEntry TIMESTAMP BY EntryTime