【发布时间】:2008-09-18 11:39:48
【问题描述】:
我在 SharePoint 2007 (MOSS) 中使用 FullTextSqlQuery,需要按两列对结果进行排序:
SELECT WorkId FROM SCOPE() ORDER BY Author ASC, Rank DESC
但是,返回结果时似乎只考虑了 ORDER BY 的第一列。在这种情况下,结果按作者正确排序,而不是按排名。如果我更改顺序,结果将按排名排序,而不是按作者排序。
我不得不自己对结果进行排序,我不太喜欢这种方法。有没有人解决这个问题?
编辑:不幸的是,它也不接受 ORDER BY 子句中的表达式(SharePoint 抛出异常)。我的猜测是,即使查询看起来像合法的 SQL,它也会在提供给 SQL 服务器之前以某种方式进行解析。
我尝试使用 SQL Profiler 捕获查询,但无济于事。
编辑 2:最后我使用单列排序(在我的情况下,作者是最重要的,因为它是最重要的),并在结果的前 N 个代码中进行了第二次排序。对项目来说已经足够好,但会让人感觉代码混乱。
【问题讨论】:
标签: sharepoint search moss