简体   繁体   English

如何将 SOQL 查询转换为 SQL 查询?

[英]How to convert SOQL query to SQL query?

I am working on SQL query, I have pre-created SOQL query, I am looking for a way to convert it to SQL query.我正在处理 SQL 查询,我已经预先创建了 SOQL 查询,我正在寻找一种将其转换为 SQL 查询的方法。 The query is:查询是:

SELECT CronJobDetail.Name, Id, CreatedDate, State
FROM CronTrigger
WHERE CronjobDetail.JobType = 'bla bla'
    AND CronJobDetail.Name LIKE '%bla bla2%'

But It does not run on terminal when I try to create monitoring script in Ruby.但是当我尝试在 Ruby 中创建监控脚本时,它不会在终端上运行。 The error that I get:我得到的错误:

(Got exception: INVALID_FIELD: No such relation 'CronJobDetail' on entity 'CronTrigger'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names. in /Users/gakdugan/.rvm/gems/ruby-1.9.3-p547/gems/restforce-2.2.0/lib/restforce/middleware/raise_error.rb:18:in `on_complete' (有异常:INVALID_FIELD:实体“CronTrigger”上没有这样的关系“CronJobDetail”。如果您尝试使用自定义字段,请务必在自定义字段名称后附加“__c”。请参考您的 WSDL 或描述调用对于适当的名称。在 /Users/gakdugan/.rvm/gems/ruby-1.9.3-p547/gems/restforce-2.2.0/lib/restforce/middleware/raise_error.rb:18:in `on_complete'

Do you have any idea how can I fix it and make it run on SQL?您知道如何修复它并使其在 SQL 上运行吗?

You are trying to access a relation without adding it to your FROM clause.您正在尝试访问关系而不将其添加到您的FROM子句中。 Alternatively, if that's a custom field name, then do what the error message suggests you to do (add __c after the custom field name).或者,如果这是自定义字段名称,则执行错误消息建议您执行的操作(在自定义字段名称后添加__c )。

You probably want to do something like this:你可能想做这样的事情:

SELECT CronJobDetail.Name, CronTrigger.Id, CronTrigger.CreatedDate, CronTrigger.State
FROM CronTrigger
    INNER JOIN CronJobDetail ON CronJobDetail.id = CronTrigger.foreign_id // this you have to do yourself
WHERE CronjobDetail.JobType = 'bla bla'
    AND CronJobDetail.Name LIKE '%bla bla2%'

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM