zoukankan      html  css  js  c++  java
  • SPQuery 查询知多少

    string beginTime = txtFormDate.Text.Trim();//开始时间(用户选择)--查询条件
    string endTime = txtToDate.Text.Trim();//结束时间(用户选择)--查询条件
    string prodNum = txtProdNum.Text.Trim();//商品编码(用户填写)--查询条件
    string shopName = txtShopName.Text.Trim();//门店名称(用户填写)--查询条件
    string queryStr = string.Empty;
    query
    = new SPQuery();
    if (beginTime.Length > 0 && endTime.Length > 0)
    {
    queryStr
    += string.Format(@"<And><Geq><FieldRef Name='SubmitDate'/><Value Type='DateTime'>{0}</Value></Geq>
    <Leq><FieldRef Name='SubmitDate'/><Value Type='DateTime' >{1}</Value></Leq></And>
    ", beginTime, endTime);
    }
    if (beginTime.Length > 0 && endTime.Length <= 0)
    {
    queryStr
    += string.Format("<Geq><FieldRef Name='SubmitDate'/><Value Type='DateTime' >{0}</Value></Geq>", beginTime);
    }
    if (beginTime.Length <= 0 && endTime.Length > 0)
    {
    queryStr
    += string.Format("<Leq><FieldRef Name='SubmitDate'/><Value Type='DateTime' >{0}</Value></Leq>",endTime);
    }
    if (prodNum.Length > 0)
    {
    queryStr
    += string.Format("<Eq><FieldRef Name='ProdNum'/><Value Type='Text'>{0}</Value></Eq>", prodNum);
    }
    if (shopName.Length > 0)
    {
    queryStr
    += string.Format("<Eq><FieldRef Name='ShopName'/><Value Type='Text'>{0}</Value></Eq>", shopName);
    }
    query.Query
    = string.Format("<Where>{0}</Where>", queryStr);

    SPQuery查询语句是以XML格式展现出来的,如下面的例子

    <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>

    现在我用大家熟悉的SQL语法来和它做个比较

    SPQuery SQL
    <Where></Where> Where
    <OrderBy></OrderBy> Order By
    <And></And> And
    <Or></Or> Or
    <Eq></Eq>    =
    <Geq></Geq> >=
    <Gt></Gt> >
    <Leq></Leq> <=
    <Lt></Lt> <
    <Neq></Neq> !=


  • 相关阅读:
    HIVE(2) 之 常用函数
    HIVE的Shell操作
    HIVE常用函数(1)聚合函数和序列函数
    版本控制系统之SVN和GIT的区别
    【PyQt5】信号与槽+装饰器定义槽函数
    【PyQt5】信号与槽+多线程
    【PyQt5】信号与槽用法进阶
    【PyQt5】信号与槽用法入门
    【python之路】【5、函数学习】带装饰器的函数作业【老男孩第2期全栈】
    【python之路】【4、文件操作】数据类型、文件操作-作业 用文件储存三级菜单并执行
  • 原文地址:https://www.cnblogs.com/ahghy/p/2076657.html
Copyright © 2011-2022 走看看