このようにSOQLクエリを作成するにはどうすればよいですか?SOQLクエリWHERE Date = 30_days_ago?
SELECT id FROM Account WHERE LastActivityDate = 30_DAYS_AGO
これは、エラー生成します。あなたは頂点からこれをやっていると
MALFORMED_QUERY:
Account WHERE LastActivityDate = 30_DAYS_AGO
^
このようにSOQLクエリを作成するにはどうすればよいですか?SOQLクエリWHERE Date = 30_days_ago?
SELECT id FROM Account WHERE LastActivityDate = 30_DAYS_AGO
これは、エラー生成します。あなたは頂点からこれをやっていると
MALFORMED_QUERY:
Account WHERE LastActivityDate = 30_DAYS_AGO
^
を、あなたは、例えば、あなたのクエリにそれをバインドし、その後、頂点に日付を計算することができます
date d = system.today().addDays(-30);
Account [] acc= [select id from account where createdDate = :d];
SELECT id FROM Account WHERE LastActivityDate = LAST_N_DAYS:30
Select Id from Account Where LastActivityDate = N_DAYS_AGO:30
私たちはN_DAYS_AGO:30をsalesforceに持っていません – C0DEPirate
LAST_WEEK
とLAST_MONTH
も簡単で、うまく機能します。 SOQLの日付関数のページはここに移動したように見える
http://www.salesforce.com/us/developer/docs/officetoolkit/Content/sforce_api_calls_soql_select_dateformats.htm:https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_select_dateformats.htm
を明確にするためには、SOQLは、日付フィールドを可能にする(例えばLastActivityDate)に、より多くのデータについては
SELECT id FROM Account WHERE LastActivityDate > LAST_MONTH
は、このリンクを見て比較演算子を使用して日付の範囲と比較されます。したがって、 "LastActivityDate = LAST_MONTH"は、日付が前の月の最初の日の開始時と同じかそれ以上で、最後の日の終了以下であると言うことと同等です。
WebサービスコールまたはApexコードでこのクエリを実行していますか?これがApexにあれば、スーパーフェルの答えは正しい。 –
Webサービス経由で、プログラムの日付を宣言し、それを特定の日付としてクエリに文字列として渡しました。 –
私はあなたが頂点を使って質問にタグ付けしたように、あなたが頂点を使用していると仮定しました。 – superfell