跳至主要内容
Administrator Guide
上次更新时间 :2023-06-23
WHERE ON

WHERE ON

指定要从 SELECT 子句中的相关业务对象 (RBO) 中筛选的字段。在条件表达式中,Workday 首先评估带括号的表达式。使用
AND
OR
使用逻辑运算符分隔 Workday 查询语言 (WQL) 中的条件表达式。

语法

WHERE ON relatedBusinessObject1 relatedBusinessObjectField1 = value1 AND relatedBusinessObjectField2 IN (instance1, instance2) OR relatedBusinessObjectField3 IN (inst_refId = referenceID) WHERE ON relatedBusinessObject2 relatedBusinessObjectField1 = value1
RBO 字段可省略大括号 { } 符号。

参数

参数
描述
relatedBusinessObject1
您要为其筛选结果的字段的 RBO。
relatedBusinessObjectfield1
,
relatedBusinessObjectfield2
, ...
relatedBusinessObjectfieldN
您要为其筛选结果的相关业务对象的字段。
value1
,
value2
, ...
valueN
要匹配的字段的值。
instance1
,
instance2
, ...
instanceN
您要匹配的字段值的 Workday 编号。
Workday 无法通过无效编号格式进行查询。
inst_refId
条件表达式中字段的参考编号类型。
referenceID
要匹配的字段值的参考编号。
您可以按参考编号(带或不带双引号)进行筛选。
示例:
  • (inst_refId = "referenceID")
  • (inst_refId = referenceID)

比较运算符

运算符
字段数据类型兼容性
描述
=
布尔值
日期
数值
文本
等于
>
日期
数值
大于
>=
日期
数值
大于或等于。
<
日期
数值
小于
<=
日期
数值
小于或等于。
!=
布尔值
日期
数值
文本
不相等。
contains
文本
比较值是字段值的子集。
不区分大小写。
示例: “Cat”包含“AT”。
not contains
文本
比较值不是字段值的子集。
不区分大小写。
示例: “Cat”不包含“dog”。
endswith
文本
比较值是字段值的子集。字段值的最后一个字符与比较值的最后一个字符匹配。
不区分大小写。
示例: “Cat”以“AT”结尾。
in
实例
文本
该字段与某个条件的 1 个或多个可能值匹配。
is empty
布尔值
日期
实例
数值
文本
该字段没有值。
is not empty
布尔值
日期
实例
数值
文本
该字段具有一个值。
not in
实例
文本
该字段不匹配任何可能的条件值。
startswith
文本
比较值是字段值的子集。字段值的第一个字符与比较值的第一个字符匹配。
不区分大小写。
示例: “Cat”以“CA”开头。

日期和时间格式

WQL 支持采用协调世界时 (UTC) 或太平洋标准时间 (PST) 的日期和日期时间。
日期和时间
格式
日期
YYYY-MM-DD
时间(24 小时制)
时:分:秒
具有时区的日期时间
PST:年-月-日 - 时:分:秒
世界标准时间:YYYY-MM-DD HH:MM:SSZ

示例

allWorkers
数据源返回结果,
地点
RBO 按符合以下条件的员工:
  • 已超过 50 岁
  • 工作超过 23 小时
SELECT worker, location{addresses}, age FROM allWorkers WHERE ON location addresses is NOT EMPTY WHERE defaultWeeklyHours > 23 AND age > 50
allWorkers
数据源和
地点
返回结果,以及符合以下条件的员工的
后序
RBO:
  • 薪资是由 Workday 编号指定的币种。
  • 被抚养人的姓氏以字母 N 开头。
  • 年龄已超过 50 岁。
  • 地点不在 2 个特定城市。
SELECT worker, location{addresses}, dependents{legalName_LastName}, age FROM allWorkers WHERE ON location addresses is NOT EMPTY AND currency in (9e996ffdd3e14da0ba7275d5400bafd4) WHERE ON dependents legalName_LastName startswith "N" WHERE age > 50 OR location in (043e71ed793b1054de6213435945000c, d13a7c46a06443c4a33c09afbdf72c73)

限制

WHERE ON 子句必须位于 WHERE 子句之前。