我在自定义查询转发器中有以下查询,以显示PracticeAreas
下与当前值相同的所有文章。 PracticeAreas
有多个复选框 - 这就是问题所在。
SELECT ArticleTitle, NodeAliasPath FROM my_articles
JOIN view_cms_tree_joined
ON ArticlesID = DocumentForeignKeyValue
where classname = 'my.articles' and
##WHERE##
并在WHERE条件中使用它:
PracticeAreas = '{%CurrentDocument.PracticeAreas#%}' and NodeID != {%CurrentDocument.NodeID#%}
示例:文章#1在PracticeAreas下检查了1和2;第2条有1个检查;第3条有1和2检查。
结果:只有第1条和第3条与我的代码相关。但 我真正想要的是上面的所有3篇文章都是相关的,因为它们都有一个相同的PracticeArea,它是复选框1.这可能吗?希望很清楚。谢谢!
答案 0 :(得分:0)
嗯,首先,您可以使用视图(由Kentico制作)为您的课程,在您的情况下,它可能是view_my_atricles_joined。它包含您需要的所有列。 我不太确定PracticeAreas包含什么字符串。 如果我假设这是一些ID(CSV)列表,例如:CSV =' ID1,ID2,ID3,... ID100'
让我们说你的文章有ID1,ID3'然后你的' WHERE'应该是这样的: PATINDEX(',ID1,',',' + CSV +',')> 0 或PATINDEX(',ID3,',',' + CSV +',')> 0