MOSS CAML(2) 基本用法及说明

本文介绍了CAML查询语言的基本用法,包括Eq、Geq、Gt、Lt和Neq等算术运算符的具体应用示例,并展示了如何组合这些条件来查询特定的数据记录。

接上篇;下面是基本用法及说明

1.Geq(>=)
The Geq element is an arithmetic operator that means "greater than or equal to." It can be used within a Where element in a view definition.
<Query>
<Where>
<Or>
<IsNull>
<FieldRef Name="Expires" />
</IsNull>
<Geq>
<FieldRef Name="Expires" />
<Value Type="DateTime">
<Today />
</Value>
</Geq>
</Or>
</Where>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE" />
</OrderBy>
</Query>
2.Eq(=)
The Eq element is an arithmetic operator that means "equal to" and is used within the Query element.
<Query>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE"></FieldRef>
</OrderBy>
<Where>
<Or>
<Eq>
<FieldRef Name="Status"></FieldRef>
<Value Type="Text">Completed</Value>
</Eq>
<IsNull>
<FieldRef Name="Status"></FieldRef>
</IsNull>
</Or>
</Where>
</Query>
3.Gt(>)
The Gt element is an arithmetic operator that means "greater than." This element is used similarly to Eq and Lt.
<Query>
<Where>
<Or>
<IsNull>
<FieldRef Name="Deadline" />
</IsNull>
<Gt>
<FieldRef Name="Deadline" />
<Value Type="DateTime">
<Today />
</Value>
</Gt>
</Or>
</Where>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE" />
</OrderBy>
</Query>
4.Lt(<)
The Lt element is an arithmetic operator that means "less than" and is used in queries in views. This element is used similarly to Eq and Gt.
<Query>
<Where>
<Or>
<IsNull>
<FieldRef Name="Deadline" />
</IsNull>
<Lt>
<FieldRef Name="Deadline" />
<Value Type="DateTime">
<Today />
</Value>
</Lt>
</Or>
</Where>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE" />
</OrderBy>
</Query>
5.Neq(!=)
The Neq element is an arithmetic operator that means "not equal to" and is used in queries.
<Query>
<OrderBy>
<FieldRef Name="Modified" Ascending="FALSE"></FieldRef>
</OrderBy>
<Where>
<Or>
<Neq>
<FieldRef Name="Status"></FieldRef>
<Value Type="Text">Completed</Value>
</Neq>
<IsNull>
<FieldRef Name="Status"></FieldRef>
</IsNull>
</Or>
</Where>
</Query>

SPQuery 的Where 子句的用法

1、一个条件实例

<Where> <Or> <Eq><FieldRef Name='Name'/>

<Value Type='Text'>Mark</Value></Eq> <Eq><FieldRef

Name='Name'/><Value Type='Text'>Joe</Value></Eq> </Or>

</Where>

2、两个条件实例

<Where> <Or> <Eq><FieldRef Name='Name'/>

<Value Type='Text'>Mark</Value></Eq> <Or> <Eq>

<FieldRef Name='Name'/><Value Type='Text'>Joe</Value></Eq>

<Eq><FieldRef Name='Name'/><Value Type='Text'>Linda</Value></Eq>

</Or> </Or> </Where>

3、三个条件实例

<Where> <Or> <Eq><FieldRef Name='Name'/>

<Value Type='Text'>Mark</Value></Eq> <Or> <Eq>

<FieldRef Name='Name'/><Value Type='Text'>Joe</Value></Eq>

<Eq><FieldRef Name='Name'/><Value Type='Text'>Linda</Value></Eq>

</Or> </Or> </Where>

下表是CAML查询的一些简单说明:

元素

说明

And

并且

BeginsWith

以某字符串开始的

Contains

包含某字符串

Eq

等于

FieldRef

一个字段的引用 (在GroupBy 中使用)

Geq

大于等于

GroupBy

分组

Gt

大于

IsNotNull

非空

IsNull

Leq

小于等于

Lt

小于

Neq

不等于

Now

当前时间

Or

OrderBy

排序

Today

今天的日期

TodayIso

今天的日期(ISO格式)

Where 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值