Salesforce 在SOQL中使用字符串比较

Salesforce 在SOQL中使用字符串比较,salesforce,soql,Salesforce,Soql,Salesforce自定义对象中的一列(id)是字符串类型,尽管它始终包含长类型值。我想运行类似这样的查询 其中id>='123'和id如果您的id始终包含长类型值,则可以使用以下Where子句 WHERE CONVERT(BIGINT, id) BETWEEN 123 AND 123456 但是,如果您的ID不是数值,则会引发错误。数据类型转换不能作为SOQL语法的一部分。您需要返回完整的结果集并过滤结果。或者,如果无法更改数据类型,则可以使用“公式字段”或“工作流更新”将字段复制到一个隐藏

Salesforce自定义对象中的一列(id)是字符串类型,尽管它始终包含长类型值。我想运行类似这样的查询


其中id>='123'和id如果您的id始终包含长类型值,则可以使用以下Where子句

WHERE CONVERT(BIGINT, id) BETWEEN 123 AND 123456

但是,如果您的ID不是数值,则会引发错误。

数据类型转换不能作为SOQL语法的一部分。您需要返回完整的结果集并过滤结果。或者,如果无法更改数据类型,则可以使用“公式字段”或“工作流更新”将字段复制到一个隐藏字段中,以便对该字段执行大于小于的查询。这不是最佳实践,但如果你真的在寻找解决方案,这是一个想法


最终,正确的答案是,如果数字需要基于文本,则用前导零填充数字,或者将数据类型更改为数字

SOQL是否支持此
Convert
函数?我正在尝试Force.com explorer,但它似乎不起作用。我不确定SOQL,但您可以参考