WHERE(Azure 流分析)

指定查询返回的行的搜索条件。

语法

[ WHERE <search_condition> ]

<search_condition> ::=
    { [ NOT ] <predicate> | ( <search_condition> ) }
    [ { AND | OR } [ NOT ] { <predicate> | ( <search_condition> ) } ]
[ ,...n ]
<predicate> ::=
    { expression { = | < > | ! = | > | > = | ! > | < | < = | ! < } expression
    | string_expression [ NOT ] LIKE string_expression
    | expression [ NOT ] BETWEEN expression AND expression
    | expression IS [ NOT ] NULL
    | expression [ NOT ] IN ( expression [ ,...n ] )
    }

参数

< search_condition >

指定要在 SELECT 语句、查询表达式或子查询的结果集中返回的行的条件。 对搜索条件中可以包含的谓词数量没有限制。

NOT

对谓词指定的布尔表达式求反。

AND

组合两个条件,并在两个条件都为 TRUE 时取值为 TRUE。

或者

组合两个条件,并在任何一个条件为 TRUE 时取值为 TRUE。

< 谓词 >

返回 TRUE 或 FALSE 的表达式。

expression

列名、常量、函数、变量、标量子查询,或者是通过运算符或子查询连接的列名、常量和函数的任意组合。 表达式还可以包含 CASE 表达式。

=

用于测试两个表达式是否相等的运算符。

<>

用于测试两个表达式是否彼此不相等的运算符。

!=

用于测试两个表达式是否彼此不相等的运算符。

>

用于测试一个表达式是否大于另一个表达式的运算符。

>=

用于测试一个表达式是否大于或等于另一个表达式的运算符。

!>

用于测试一个表达式是否不大于另一个表达式的运算符。

<

用于测试一个表达式是否小于另一个表达式的运算符。

<=

用于测试一个表达式是否小于或等于另一个表达式的运算符。

!<

用于测试一个表达式是否不小于另一个表达式的运算符。

String_expression

字符串和通配符。

[NOT] LIKE

指示后续字符串使用时要进行模式匹配。

[NOT] BETWEEN

指定值的包含范围。 使用 AND 分隔开始值和结束值。

IS [NOT] NULL

根据使用的关键字,指定是否搜索空值或非空值。 若要确定表达式是否为 NULL,请使用 IS NULL 或 IS NOT NULL,而不要使用比较运算符(如 = 或 !=)。 当其中一个或两个参数都为 NULL 时,比较运算符返回 false。 例如 col1 = 1 ,当 col1 值为 NULL 时, 和 col1 != 1 均为 false,而 col1 IS NULL 在这种情况下为 true。

[NOT] IN

指定值列表。 需要括号 之间的逗号分隔值的列表: ('a','b','c')

示例

SELECT TollId, EntryTime, VehicleType, LicensePlate, Toll, Tag
FROM TollTagEntry TIMESTAMP BY EntryTime
WHERE ( CAST(TollId AS bigint) BETWEEN 1 AND 2 )
AND LicensePlate LIKE '%AC%'