CAML查询中的自定义排序顺序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CAML查询中的自定义排序顺序相关的知识,希望对你有一定的参考价值。
如何告诉CAML查询以完全自定义的顺序对结果进行排序?
.
例如,对于给定的字段:
- 当等于顶部的'栗子'时,
- 接下来等于'Zebra',
- 然后等于'House'?
最后,在这些分组中,排序第二个条件(例如“名称”),通常是升序。
所以这
ID Owns Name
————————————————————
1 Zebra Sue
2 House Jim
3 Chestnut Sid
4 House Ken
5 Zebra Bob
6 Chestnut Lou
变
ID Owns Name
————————————————————
6 Chestnut Lou
3 Chestnut Sid
5 Zebra Bob
1 Zebra Sue
2 House Jim
4 House Ken
在SQL中,这可以用Case/When.
完成但是在CAML中?没那么多!
答案
据我所知,CAML没有这样的排序算子。解决方法可能是您使用数字数据类型和公式=IF(Owns="Chestnut",0,IF(Owns="Zebra",1,IF(Owns="House",3,999)))
将计算列添加到列表中。
现在可以在计算列上进行排序,该列将自定义排序顺序转换为数字。另一个解决方案是您创建第二个列表,其中包含要拥有的项目,第二个列包含其排序顺序。您可以链接这两个列表,并按项目列表排序顺序排序。好处是排序顺序的变化就像编辑各个列表项一样简单。
以上是关于CAML查询中的自定义排序顺序的主要内容,如果未能解决你的问题,请参考以下文章