Entity SQL Language 四 OrderBy/部分查询结果

原创 2008年09月28日 14:31:00

Entity SQL就是Ado.net Entity Framework的一种查询语言,它简单灵活,不被语言版本所限制。

Order By操作

基本的OrderBy操作如下:

string entitySQL = "SELECT VALUE c FROM Customers AS c ORDER BY c.ContactName";
var query = db.CreateQuery(entitySQL);

如果想要倒序排列的话与SQL一样,加上DESC就可以了

string entitySQL = "SELECT VALUE c FROM Customers AS c ORDER BY c.ContactName desc";
var query = db.CreateQuery(entitySQL);

多条排序规则:

string entitySQL = "SELECT VALUE c FROM Customers AS c ORDER BY c.CompanyName ASC, c.ContactTitle DESC";
ObjectQuery query = db.CreateQuery(entitySQL);

返回部分查询结果

如果你要查询的数据仅是一两个字段,按以前所有的写法,将所有的字段都Select了,数据库抽了,服务器也抽了。

所以我们经常会只返回一部分结果,在Linq中我们可以通过select new {}一个新的对象来实现,在Entity SQL中我们可以通过以下方法来实现

using System.Data.Common;
//....若干行
string entitySQL = "SELECT VALUE row(c.Phone,c.Country) FROM Customers as c";
ObjectQuery query = db.CreateQuery(entitySQL);
query.First()["phone"];//使用方法

暂时还没有找到相关文档提出如何像使用正常类一样的使用这种部分查询结果

但是知道了如何去查询多个表的组合

在EDM中添加一个新类,不继承,而是添加属性利用组合来添加新类,比如添加了A和B两个实体为属性,而这个新建的类又叫Two

在写EntitySQL时select 命名空间.Two(a,b)...即可

整理一下Entity Framework的查询与操作

Entity Framework是个好东西,虽然没有Hibernate功能强大,但使用更简便。今天整理一下常见SQL如何用EF来表达,Func形式和Linq形式都会列出来(本人更喜欢Func形式)。 ...
  • aojiancc2
  • aojiancc2
  • 2014年02月10日 16:22
  • 3048

sql语句无错误 order by 和limit一起用数据查询不准有重复

如sql无错误,但总是查询不准,有重复。 并且去掉order by只保留limit数据就准确,原因在于mysql种order by和limit一起用,当order by有多条相同值时,mysql优化...
  • Truong
  • Truong
  • 2017年10月09日 16:44
  • 257

Hibernate中使用sql查询结果后再封装成实体类的问题

在使用hibernate的时候, 有时需要做一些联表查询, 而有时候需要查询的表在实体中并未做映射关系, 此时使用hsql语句就不太好使了, 就需要用到sql 了, 但是sql查出的结果是Object...
  • u011526234
  • u011526234
  • 2016年11月04日 19:06
  • 1692

Entity framework多表查询

 /// /// 查询的数据 /// /// 升序asc(默认)还是降序desc /// 排序字段 /// 查询条件 /// 额外的参数 /// pub...
  • niewq
  • niewq
  • 2015年01月14日 21:52
  • 4974

SQL语言包含四个部分

数据定义语言(DDL) 数据操作语言(DML) 数据查询语言(DQ;)
  • yolox1y
  • yolox1y
  • 2014年04月22日 22:14
  • 158

MySQL 查询结果取交集的实现方法

本文将详细介绍MySQL中如何实现以SQL查询返回的结果集取交集的实现方法,需要的朋友可以参考 1 MySQL中如何实现以下SQL查询 (SELECT S.Name FROM STUDE...
  • zhangxiong0797
  • zhangxiong0797
  • 2014年08月11日 16:36
  • 2149

在hibernate中,如何把原生sql查询出来的结果映射到实体bean

大家都知道hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装。 个人觉得,hibernate自带的hql语句却不见得很好用。 现实工作中,...
  • baolong47
  • baolong47
  • 2013年04月19日 16:25
  • 3194

Entity Framework的查询与操作

直接执行sql语句 MyDbContext myc = new MyDbContext(); //直接执行sql语句 List userlis...
  • aojiancc2
  • aojiancc2
  • 2016年08月17日 22:16
  • 941

怎么将 pl/sql Developer 中查询的结果集导出到 Excel . txt . html . xml csv中

怎么将 pl/sql Developer 中查询的结果集导出到 Excel . txt . html . xml csv中 www.MyException.Cn   发布于:2012-08-16 1...
  • zndxlxm
  • zndxlxm
  • 2013年10月04日 14:21
  • 10507

SQL 从查询结果里查询

有orders表: 我想要从从表中查出每天电动车和手机各自的销售总额。这个需求还是蛮简单的,只需要根据createtime和product group by就行了。下面是我写的SQL语句: SELE...
  • l294265421
  • l294265421
  • 2016年04月16日 01:06
  • 3325
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Entity SQL Language 四 OrderBy/部分查询结果
举报原因:
原因补充:

(最多只允许输入30个字)