group having 分页等

var ev = OrmLiteConfig.DialectProvider.SqlExpression();


group的使用

同sql一样,注意group分组的字段要在select里

ev.Select(c => new { c.Birthday, c.Active }).Where(rn => rn.Birthday >= new DateTime(year, 1, 1) && rn.Birthday <= lastDay).GroupBy(rn => new { rn.Birthday,rn.Active});


having的使用

ev.Select(c => new { c.Birthday, c.Active }).Where(rn => rn.Birthday >= new DateTime(year, 1, 1) && rn.Birthday <= lastDay).GroupBy(rn => new { rn.Birthday, rn.Active }).Having(x=>Sql.Max(x.Rate)>5);


orderby 排序

一升一降 先降后升 ordered by Rate Descending and Name Ascending

ev.Where().OrderBy(rn => new { at = Sql.Desc(rn.Rate), rn.Name })

也可以用这个OrderByDescending


Limit 分页

其实就是skip 然后take

ev.Limit(5); 默认是take 即top 5

ev.Limit(0, 4);// first page, page size=4;

ev.Limit(4, 4);// second page

ev.Limit().OrderBy(); // clear limit, clear orde

 ToCountStatement 总数
var expr = db.From<LetterFrequency>() .Join<LetterFrequency, LetterStat>() .Where<LetterStat>(x => x.Id > 0);

var rscount= expr.ToCountStatement();//获取expr表达式结果的总数


 ev.SelectDistinct(r => r.City);
ev.Select(r => Sql.As(Sql.Max(r.Birthday), "Birthday")); //列别名Birthday
var r2 = db.Scalar<Author, DateTime>(e => Sql.Max(e.Birthday));Author表 DateTime类型

联接

LeftJoin

db.Column < string > ( db.From < TableA > ()

.LeftJoin < TableB >((a, b) => a.Id == b.Id)

.Where < TableB > (b => b.Id == null)

.Select(a => a.Name));

Join

db.From < TableA > ()

.Join < TableB > ()

.OrderBy(x => x.Id);

CrossJoin

db.From < CrossJoinTableA > ()

.CrossJoin < CrossJoinTableB >()

.OrderBy < CrossJoinTableA >(x => x.Id)

.ThenBy < CrossJoinTableB >(x => x.Id);




调试

db.GetLastSql().Print();

最新文章

  1. 小菜学习Winform(六)剪切板和拖放复制
  2. Andriod 按钮代码
  3. NYOJ-244 16进制的简单运算 AC 分类: NYOJ 2014-01-17 21:11 195人阅读 评论(0) 收藏
  4. Spring框架入门:(非原著,转载)
  5. android中ViewHolder通用简洁写法
  6. HDU-1527 取石子游戏
  7. TatukGIS - GisDefs - ChangeDir 函数
  8. 【每天一个Linux命令】13. Linux中whereis命令的用法
  9. CentOS 常用命令及快捷键整理
  10. [bzoj2333] [SCOI2011]棘手的操作 (可并堆)
  11. 正确处理下载文件时HTTP头的编码问题(Content-Disposition)
  12. Lombok快速入门
  13. 我设计的电脑usb红外遥控键盘原理图
  14. 作用域&amp;&amp;闭包
  15. 【Hadoop学习之十】MapReduce案例分析二-好友推荐
  16. selenium打开chrome时,出现 &quot;您使用的是不受支持的命令行标记:--ignore-certificate-errors&quot;&quot;
  17. 1-QT-文件操作
  18. POJ 1157
  19. KVM的初始化过程
  20. Android中新建的文件在R没有显示相应的文件解决的方法总结

热门文章

  1. ASP.NET MVC Model验证总结【转】
  2. Linux内存管理原理【转】
  3. 数32位 unsigned int中1的个数
  4. Discuz2 x3深入研究内容资料
  5. Java可变长参数方法调用问题
  6. 天大acm 题号1002 Maya Calendar
  7. SDUT 2411:Pixel density
  8. asp.net dropdownlist和listbox
  9. [转]人人网首页拖拽上传详解(HTML5 Drag&amp;Drop、FileReader API、formdata)
  10. C89标准库函数手册(待整理)