VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 数据库 > SQL教程 >
  • 数据库组件 Hxj.Data (十一) (where条件)

在前几节的例子中都生成where之后的条件,例如:

Products._.CategoryID == 2
代码中这些就是生成条件,对应sql就是 categoryid=2
 
归根到底这句代码返回回来的是一个WhereClip.
 
WhereClip where = WhereClip.All;
这个是一个空值,也就是无条件。
不会生成where条件。
 
条件的组合
 
两个条件同时成立:
Products._.UnitPrice > 1 && Products._.CategoryID == 2
等效sql就是  unitprice>1 and categoryid=2
 
两个条件或
Products._.UnitPrice > 1 || Products._.CategoryID == 2
等效sql就是  unitprice>1 or categoryid=2
也就是 && 表示左右条件同时成立
          ||  表示左右条件有一个成立即可
 
组件重载了操作符:
C# SQL
> >
>= >=
<= <=
< <
== =
!= <>
   
写法和sql类似,也方便记忆与书写。
 
 
当然也可等效写为:
WhereClip where = WhereClip.All;
where = where.And(Products._.UnitPrice > 1);
where = where.Or(Products._.CategoryID == 2);
 
where.And 等效于 &&
where.Or 等效于 ||
 
 
优先级可用()括起来,如下
(Products._.ProductName.Contain("apple") && Products._.UnitPrice > 1) || Products._.CategoryID == 2
等效sql就是   (productname like ‘%apple%' and unitprice>1) or categoryid=2
也等效于
WhereClip where = WhereClip.All;
where = where.And(Products._.ProductName.Contain("apple"));
where = where.And(Products._.UnitPrice > 1);
where = where.Or(Products._.CategoryID == 2);
 
下一节将讲述Field中生成条件的方法。
 

 


作者:steven hu
出处:http://www.cnblogs.com/huxj


相关教程