[总结]SHAREPOINT - CAML列表查询(上)
首先要了解的是CAML(Collaboration Application Markup Language)不仅仅是用在对列表、文档库的查询,字段的定义,站点定义等处处使用的都是CAML。
简单的提一下CAML列表查询相关知识,请注意CAML查询无论对于标签还是值均大小写敏感
CAML查询的根元素是Query,Query元素包含两个元素(非必须):<OrderBy>, <Where>
<OrderBy>
<OrderBy>是最简单的元素,用来为返回的数据排序,语法如下:
<OrderBy>
<FieldRef Name='LastName' Ascending='False' />(默认为升序Ascending.)
</OrderBy>
<OrderBy>语法并非必须且可以在查询中使用多个OrderBy。
<Where>
<Where>元素用来指定查询条件,此元素语法非常简单,但根据具体的情况也会写得非常的复杂。
<Where>
<Eq>
<FieldRef Name='LastName' />
<Value Type='Text'>Johnson</Value>
</Eq>
</Where>
操作符有:Eq等于;Neq不等于;Gt大于;Geq大于等于;Lt小于;Leq小于等于;IsNull是否空;BeginsWith开始于;Contains包含
字段FieldRef元素可以是列表中的任何一个字段,如果使用Name属性则必须指定内部名称,也可以使用ID属性指定字段的GUID;
值Value元素指定具体的查询条件,如果没有指定默认是Text,DateTime的使用复杂些稍候详细说明。
如果查询的字段类别是lookup,指定值的时候可以指定具体值也可以指定ID,如果需要指定ID,需要在FieldRef元素里指定LookupId为true,例:
<where>
<Eq>
<FieldRef Name='Country' />
<Value Type='Lookup'>China</Value>
</Eq>
</Where>
或者
<where>
<Eq>
<FieldRef Name='Country' LookupId='True' />
<Value Type='Lookup'>15</Value>
</Eq>
</Where>
如果想指定两个查询条件,需要指定And或者Or
<Where>
<And>
<Eq>
<FieldRef Name='LastName' />
<Value Type='Text'>Wang</Value>
</Eq>
<Geq>
<FieldRef Name='Age' />
<Value Type='Number'>21</Value>
</Geq>
</And>
</Where>
如果有两个以上的查询条件需要按比较特殊的方式来指定:
<Where>
<And>
<And>
<Eq>
<FieldRef Name='LastName' />
<Value Type='Text'>Wang</Value>
</Eq>
<Geq>
<FieldRef Name='Age' />
<Value Type='Number'>21</Value>
</Geq>
</And>
<Lt>
<FieldFef Name='Age' />
<Value Type='Number>60</Value>
</Lt>
</And>
</Where>
查询条件再多按此类推。
[总结]SHAREPOINT - CAML列表查询(上)的更多相关文章
- SHAREPOINT - CAML列表查询
首先要了解的是CAML(Collaboration Application Markup Language)不仅仅是用在对列表.文档库的查询,字段的定义,站点定义等处处使用的都是CAML. 简单的提一 ...
- SharePoint中跨列表查询
1,最近的项目中遇到一个需求,站点中有几十个列表,其中每5,6个列表属于一个模块下的.客户的需求是,首页上显示一个模块下所有列表数据的前5条,并按创建时间排序. 2,刚刚考虑到这块的实现方法时,用的是 ...
- SharePoint 2013 列表多表联合查询
在SharePoint的企业应用中,遇到复杂的逻辑的时候,我们会需要多表查询:SharePoint和Sql数据表一样,也支持多表联合查询,但是不像Sql语句那样简单,需要使用SPQuery的Joins ...
- 【Javascript】列表查询页面,简单地保存上一次查询的查询参数
开发中经常做一些查询参数 + 列表参数的功能,这些功能有时候需提供导出Excel,或带超链接到其他明细页面的功能点. 在一些交互性要求严格的系统,需求方会要求: 用户第一个输入某些查询条件进行列表查询 ...
- Sharepoint 2013列表视图和字段权限扩展插件(免费下载)!
记得2014年春节期间,有博客园的网友通过QQ向我咨询Sharepoint 2013列表视图和字段权限扩展,因为之前他看到我博客介绍Sharepoint 2010列表视图和字段的权限控制扩展使用,问有 ...
- sharepoint 2013 列表和库标签 元数据导航配置(2)
接前面提到的,如何创建一个术语库.sharepoint 2013 列表和库标签 元数据导航配置(1), 现在要做的,就是如何在自定义或者文档库中使用这个术语库,实现标签功能,通过这些标签,找到对应的文 ...
- SharePoint CAML In Action——Part II
在SharePoint中,相对于Linq to SharePoint而言,CAML是轻量化的.当然缺点也是显而易见的,"Hard Code"有时会让你抓狂.在实际场景中,经常会根据 ...
- SharePoint CAML In Action——Part I
在SharePoint中,我们经常要对List进行操作,比如要从List中取出相应的ListItem,利用CAML是个好办法.在没了解CAML之前,我是这样取数据的: MyList.Items.Cas ...
- SharePoint 创建列表并使用Windows Presentation Foundation应用程序管理列表
SharePoint创建列表并使用程序管理列表 列表是SharePoint开发者输入数据的方式之中的一个.使用Web界面创建一个列表并加入一些数据.过程例如以下: 1. 打开站点. 2 ...
随机推荐
- linux的理解
1.用户组 因为linux 是多人多任务系统 所有可能有很多人在主机人作业.比如 有A B C D 4个人 在linux主机上作业, A B C 3个人 在做同一个项目 建了一个文件夹这个文件只能A ...
- 本地命令上传文件到服务器以及linux编辑过程中非正常退出问题
一.上传文件到linux服务器首先从你本地切换到你要上传文件的目录,接下来:scp 文件名字 服务器用户名字@服务器ip:存储路径例子:scp index.html root@106.75.229 ...
- P2896 [USACO08FEB]一起吃饭Eating Together
传送门 可以考虑DP 设 f [ i ] [ 1/2/3 ] [ 0/1 ] 表示当前考虑到第 i 头牛,打算让当前位置的编号变成 1/2/3,并且打算让整段序列上升/下降 0/1 然后就对每种情况慢 ...
- Java换行符
public static final String NewLineSeparator=System.getProperty("line.separator","\n&q ...
- day_11 生成器
. 生成器本身是迭代器 .写迭代器的方式 .生成器函数 .生成器表达式 .各种推导式 .生成器函数 函数内部有yield, yield返回->return yield把函数分段进行 生成器可以使 ...
- python3 repr()函数笔记
a=[1,2,3,4]print(repr(a))print(type(repr(a)))for i in repr(a): print(i)#repr函数是将对象转换成string类型
- tomcat 虚拟目录配置appBase和docBase的区别
先看server.xml文件host配置 <Host name="localhost" appBase="webapps" 可以修改成自己想 ...
- @AutoConfigureAfter不生效 @Configration bean的创建顺序
https://gooroo.io/GoorooTHINK/Article/17466/Lessons-Learned-Writing-Spring-Boot-Auto-Configurations/ ...
- pthread_cond_wait函数的学习以及其他
pthread_cond_wait() 前使用 while 讲解2009-10-27 9:33LINUX环境下多线程编程肯定会遇到需要条件变量的情况,此时必然要使用pthread_cond_wait( ...
- PlayMaker 设置颜色 Set Materia lColor
1. 指定一个游戏对象,Color处设为红色,执行这个行为后就把游戏对象的材质变为了红色: 2. Color也可以使用一个弄好的Color类型的变量,如下图:Color处用了一个提前设置好的变量