1

記事のタイトルは KnowledgeArticleVersion テーブルにあり、View Normalized Score は KnowledgeArticleViewStat テーブルにあります。両方のテーブルの親は KnowledgeArticle ですが、DB スキーマにリレーション名が存在しないため、KnowledgeArticleVersion に結合できません。もちろん、最初はそのようなクエリを実行できます

Select k.ParentId, k.NormalizedScore From KnowledgeArticleViewStat k order by k.NormalizedScore 

それで

SELECT Title, UrlName, KnowledgeArticleId FROM KnowledgeArticleVersion WHERE PublishStatus='Online' AND language ='en_US' and KnowledgeArticleId in (:ids)

しかし、私の宗教では、1 つではなく 2 つのクエリを実行することを禁じています。

SOQLで結合を実行する正しい方法を誰かが教えてくれるかもしれません。

4

1 に答える 1

0

k.parentIds が :ids で使用するものであると仮定すると、これは機能します。

SELECT id,Title , UrlName, KnowledgeArticleId, PublishStatus, language 
FROM KnowledgeArticleVersion 
WHERE PublishStatus='Online'
AND language ='en_US' 
AND KnowledgeArticleId  IN (SELECT ParentId
                            FROM KnowledgeArticleViewStat
                           )
于 2013-06-21T08:50:19.773 に答える