您可以向任何 SOQL 查询添加 "AND field = value" 吗?

Can you add an "AND field = value" to any SOQL query?

假设查询如下所示:

SELECT Id FROM Contact WHERE <some filter here>

我想补充一点:

AND field = value

换句话说:如果查询以 WHERE 结尾(没有其他 sections/statements,例如“LIMIT”等),您能否总是添加一个 AND 并让它不中断?

不确定我是否理解问题,我认为这不是继续进行的最佳方式。 无论如何,我认为这总是可能的。注意这里有一个不以“;”结尾的“some filter here”并在您要添加的内容前留空space。确保您使用的属性与所选 table.

兼容

不,有些查询在末尾添加 AND field=value 会导致查询无效。最简单的示例是其中包含 OR 子句的示例。

select name from Contact where name like 'a%' or name like 'z%'

添加 and 子句给出

select name from Contact where name like 'a%' or name like 'z%' AND email=null

当你 运行 它会给出一个格式错误的查询错误。

MALFORMED_QUERY: 
name like 'a%' or name like 'z%' AND email=null
                                ^
ERROR at Row:1:Column:64
unexpected token: AND