查询列的右边4时出现空白结果

时间:2017-11-27 23:57:01

标签: mysql salesforce soql

新加入交叉连接并遇到我正在处理的问题。我希望有人可以帮助查询并解释为什么事情正在发挥作用。

此查询为我提供了结果,但我希望获得每行的最后四个CompanyAgreement__c.URL__c列。

SELECT Company_Agreement__c.RecordId,
       CompanyAgreement__c.URL__c, 
FROM `Company`.Company_Agreement__c 
WHERE (URL__c != NULL) 
LIMIT 10;

当我添加选项以获得最右边的四位数时,我得到的结果只是空白。查询执行但结果集为空。

SELECT Company_Agreement__c.RecordId,
       CompanyAgreement__c.URL__c, 
       RIGHT(Company_Agreement__c.URL__c, 4) as LastFour
FROM `Company`.Company_Agreement__c 
WHERE (URL__c != NULL) 
LIMIT 10;

任何想法如何解决这个问题以及发生了什么?如果它有帮助,我正在处理来自Jira和Salesforce的数据,我知道它使用SOQL。 提前致谢,请原谅这篇文章中的任何无知。

我的预期结果集看起来像这样。

RecordID    URL__c                     LastFour
1           http://www.testlink-1234    1234
2           http://www.testlink-0525    0525
3           http://www.testlink-3515    3515
4           http://www.testlink-0658    0658
5           http://www.testlink-6812    6812

1 个答案:

答案 0 :(得分:0)

SOQL中不提供

LEFTRIGHT个函数。您需要创建一个公式字段,该字段返回最后4个字符,然后查询该公式字段。

请参阅此链接,了解如何为LEFTRIGHT创建公式:

https://help.salesforce.com/articleView?id=000221210&type=1