ColumnValues
针对列中的值运行表达式。
语法
ColumnValues
<COL_NAME>
<EXPRESSION>
COL_NAME — 要根据其评估数据质量规则的列的名称。
支持的列类型:任何列类型
EXPRESSION — 针对规则类型响应运行以生成布尔值的表达式。有关更多信息,请参阅 Expressions。
示例:允许的值
以下示例规则检查指定列中的每个值是否在允许的值集中(包括零值、空值以及仅包含空格的字符串)。
ColumnValues "Country" in [ "US", "CA", "UK", NULL, EMPTY, WHITESPACES_ONLY ] ColumnValues "gender" in ["F", "M"] where "weightinkgs < 10"
示例:正则表达式
以下示例规则根据正则表达式检查列中的值。
ColumnValues "First_Name" matches "[a-zA-Z]*"
示例:日期值
以下示例规则根据日期表达式检查日期列中的值。
ColumnValues "Load_Date" > (now() - 3 days)
示例:数值
以下示例规则检查列值是否与特定的数字约束条件相匹配。
ColumnValues "Customer_ID" between 1 and 2000
零值行为
对于所有 ColumnValues
规则(!=
和 NOT IN
除外),NULL
行都不能通过该规则。如果由于零值而导致不能通过规则,则失效原因将显示如下:
Value: NULL does not meet the constraint requirement!
以下示例复合规则提供了一种显式允许 NULL
值的方法:
(ColumnValues "Age" > 21) OR (ColumnValues "Age" = NULL)
使用 !=
和 not in
语法的否定 ColumnValues 规则将允许 NULL
行。例如:
ColumnValues "Age" != 21
ColumnValues "Age" not in [21, 22, 23]
以下示例提供了一种让 NULL
值显式失效的方法
(ColumnValues "Age" != 21) AND (ColumnValues "Age" != NULL)
ColumnValues "Age" not in [21, 22, 23, NULL]