Entity SQL Language 二 基本执行方法、操作符、Select及Where

简介: 现在就开始正式的对Entity SQL的全面学习,我将按SQL的学习过程的套路来对Entity SQL进行学习。 Entity SQL的执行方法 ObjectQuery query = db.CreateQuery(entitySQL语句); 这样就执行了所书写的Entity SQL。

现在就开始正式的对Entity SQL的全面学习,我将按SQL的学习过程的套路来对Entity SQL进行学习。

Entity SQL的执行方法

ObjectQuery<返回类型> query = db.CreateQuery<返回类型>(entitySQL语句);

这样就执行了所书写的Entity SQL。并返回一个ObjectQuery,它有点近似于IQueryable。

操作符

在任何语言中,操作符都是很重要的概念,Entity SQL支持如下操作符。

优先级 作用与类型 符号
1 层级 .,()[]
2 ! not
3 乘除 * / %
4 加减 +-
5 比较 < > <= >=
6 相等

= != <>

7

and &&

8 or ||

 

select、where的基本语法

where 做为查询最简单的语法它的实现方法如下:select value c from cs as c where e

举一个例子,这也是我们见到的第一个真正的Entity SQL
string entitySQL = "SELECT VALUE c FROM Customers AS c WHERE c.City = 'Seattle';";
ObjectQuery<Customer> query = db.CreateQuery<Customer>(entitySQL);

注意这里

  1. select value的value不能省去
  2. 语句区分大小写
  3. 后面的";"可以不存在。
  4. 上篇说到的,如果Entity SQL是select value Customers FROM Customers WHERE Customers.City = 'Seattle'也是合法的

语句与执行结果示例:

image

Top子句

Top的使用如下所示

select value top(1) c FROM Customers AS c WHERE c.City = 'Seattle'

目录
打赏
0
0
0
0
1
分享
相关文章
惊呆:where 1=1 可能严重影响性能,差了10多倍,快去排查你的 sql
老架构师尼恩在读者交流群中分享了关于MySQL中“where 1=1”条件的性能影响及其解决方案。该条件在动态SQL中常用,但可能在无真实条件时导致全表扫描,严重影响性能。尼恩建议通过其他条件或SQL子句命中索引,或使用MyBatis的`&lt;where&gt;`标签来避免性能问题。他还提供了详细的执行计划分析和优化建议,帮助大家在面试中展示深厚的技术功底,赢得面试官的青睐。更多内容可参考《尼恩Java面试宝典PDF》。
mybatis复习03,动态SQL,if,choose,where,set,trim标签及foreach标签的用法
文章介绍了MyBatis中动态SQL的用法,包括if、choose、where、set和trim标签,以及foreach标签的详细使用。通过实际代码示例,展示了如何根据条件动态构建查询、更新和批量插入操作的SQL语句。
mybatis复习03,动态SQL,if,choose,where,set,trim标签及foreach标签的用法
|
6月前
|
mybatis :sqlmapconfig.xml配置 ++++Mapper XML 文件(sql/insert/delete/update/select)(增删改查)用法
当然,这些仅是MyBatis功能的初步介绍。MyBatis还提供了高级特性,如动态SQL、类型处理器、插件等,可以进一步提供对数据库交互的强大支持和灵活性。希望上述内容对您理解MyBatis的基本操作有所帮助。在实际使用中,您可能还需要根据具体的业务要求调整和优化SQL语句和配置。
98 1
python 提取出sql语句中where的值
python 提取出sql语句中where的值
80 0
INSERT INTO t_a.tableName SELECT * FROM t_b.tableName 如何通过定义一个list对象,包含多个tableName,循环执行前面的sql,用MySQL的语法写
【8月更文挑战第7天】INSERT INTO t_a.tableName SELECT * FROM t_b.tableName 如何通过定义一个list对象,包含多个tableName,循环执行前面的sql,用MySQL的语法写
70 5
|
7月前
|
SQL
访问者模式问题之构造一个包含 select、from 和 where 子句的 SQL 节点树,如何解决
访问者模式问题之构造一个包含 select、from 和 where 子句的 SQL 节点树,如何解决
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")

热门文章

最新文章