当前位置: 首页 > news >正文

【并集查询】.NET开源 ORM 框架 SqlSugar 系列

  .NET开源 ORM 框架 SqlSugar 系列

  1. 【开篇】.NET开源 ORM 框架 SqlSugar 系列
  2. 【入门必看】.NET开源 ORM 框架 SqlSugar 系列
  3. 【实体配置】.NET开源 ORM 框架 SqlSugar 系列
  4. 【Db First】.NET开源 ORM 框架 SqlSugar 系列
  5. 【Code First】.NET开源 ORM 框架 SqlSugar 系列
  6. 【数据事务】.NET开源 ORM 框架 SqlSugar 系列
  7. 【连接池】.NET开源 ORM 框架 SqlSugar 系列
  8. 【查询目录】.NET开源 ORM 框架 SqlSugar 系列
  9. 【查询基础】.NET开源 ORM 框架 SqlSugar 系列
  10. 【排序用法】.NET开源 ORM 框架 SqlSugar 系列
  11. 【分组去重】.NET开源 ORM 框架 SqlSugar 系列
  12. 【联表查询】.NET开源 ORM 框架 SqlSugar 系列
  13. 【导航查询】.NET开源 ORM 框架 SqlSugar 系列
  14. 【子查询】.NET开源 ORM 框架 SqlSugar 系列
  15. 【嵌套查询】.NET开源 ORM 框架 SqlSugar 系列
  16. 【配置查询】.NET开源 ORM 框架 SqlSugar 系列 


🎯每个查询语句都有其对应的结果集,我们可以将多个查询语句的结果集合并起来,这可以称为并集查询

一、实体方式

📌使用实体类方式,要保证生成的 Select 中的 列要一致 ,用Select 一定要 new Class 或者  ((object)new {} 写法 保证返回类型是 引用类型 

 var q1 = db.Queryable<Student>().Select(it=>new Model{ name=it.Name }); //select结构要一样var q2 = db.Queryable<School>().Select(it => new Model { name = it.Name });var list = db.UnionAll(q1, q2).ToList();

  🪧生成的Sql如下:

SELECT * FROM  (SELECT  [Name] AS [name]  FROM [STudent]  UNION ALL
SELECT  [Name] AS [name]  FROM [School] ) unionTable

二、匿名对象方式

📌 SqlSugarCore 5.1.4.147-preview14 及以下版本 要加一个 object 的转换。

//SqlSugarCore 5.1.4.147-preview14 及以上 完美支持匿名对象 请升级
var q1 = db.Queryable<Order>().Select(it => new { id=it.Id });//select结构要一样
var q2 = db.Queryable<Order>().Select(it =>new { id = it.Id });
db.UnionAll(q1, q2).ToList();//SqlSugarCore 5.1.4.147-preview14 及以下
var q1 = db.Queryable<Order>().Select(it => (object)new { id=it.Id });
var q2 = db.Queryable<Order>().Select(it =>(object) new { id = it.Id });
db.UnionAll(q1, q2).Select<Order>().ToList();

三、单字段

var q1 = db.Queryable<Order>().Where(it=>it.id>10).Select(it =>(object) it.Name);
var q2 = db.Queryable<Order>().Where(it=>it.id==2).Select(it => (object) it.Name);
var kust = db.UnionAll(q1, q2)
.Select<string>().ToList();

四、跨库


var q1 = db.Queryable<UnitNClobTest>().AsWithAttr();//转换表名 具体用法看跨库查询 AS 出来的表名规则一样的
var q2 = db.Queryable<UnitNClobTest>().AsWithAttr();
db.UnionAll(q1, q2).ToList();

五、MySql Limit Union all

升级最新版本

💦万丈高楼平地起,做开发想要技术精进,必须要有扎实的基础功底。基础SQL查询语法一定要牢记于心,才能应对后面更为复杂的形势。 

   .NET开源 ORM 框架 SqlSugar 系列

  1. 【开篇】.NET开源 ORM 框架 SqlSugar 系列
  2. 【入门必看】.NET开源 ORM 框架 SqlSugar 系列
  3. 【实体配置】.NET开源 ORM 框架 SqlSugar 系列
  4. 【Db First】.NET开源 ORM 框架 SqlSugar 系列
  5. 【Code First】.NET开源 ORM 框架 SqlSugar 系列
  6. 【数据事务】.NET开源 ORM 框架 SqlSugar 系列
  7. 【连接池】.NET开源 ORM 框架 SqlSugar 系列
  8. 【查询目录】.NET开源 ORM 框架 SqlSugar 系列
  9. 【查询基础】.NET开源 ORM 框架 SqlSugar 系列
  10. 【排序用法】.NET开源 ORM 框架 SqlSugar 系列
  11. 【分组去重】.NET开源 ORM 框架 SqlSugar 系列
  12. 【联表查询】.NET开源 ORM 框架 SqlSugar 系列
  13. 【导航查询】.NET开源 ORM 框架 SqlSugar 系列
  14. 【子查询】.NET开源 ORM 框架 SqlSugar 系列
  15. 【嵌套查询】.NET开源 ORM 框架 SqlSugar 系列
  16. 【配置查询】.NET开源 ORM 框架 SqlSugar 系列
http://www.lryc.cn/news/497941.html

相关文章:

  • 基于单片机的智能农田灌溉节水系统设计及应用
  • jmeter如何导出中文版的测试报告?
  • AIGC 与艺术创作:变革与机遇
  • 【Axios】如何在Vue中使用Axios请求拦截器
  • element Plus中 el-table表头宽度自适应,不换行
  • 【Android】从事件分发开始:原理解析如何解决滑动冲突
  • 如何使用JDBC向数据库中插入日期数据???
  • 高频面试题(含笔试高频算法整理)基本总结回顾29
  • Flink日志配置
  • 论文 | EfficientRAG: Efficient Retriever for Multi-Hop Question Answering
  • 超越Hallo和AniPortrait?音频驱动肖像动画新方法LetsTalk
  • 手机LCD分区刷新技术介绍
  • WPF软件花屏的解决方法
  • 深度学习笔记——模型压缩和优化技术(蒸馏、剪枝、量化)
  • 开发手札:Win+Mac下工程多开联调
  • 项目基于oshi库快速搭建一个cpu监控面板
  • 【c语言】指针3
  • 【开源】A063—基于Spring Boot的农产品直卖平台的设计与实现
  • Can‘t find variable: token(token is not defined)
  • 【JavaEE 初阶】⽹络编程套接字
  • 【Linux内核】Hello word程序
  • PHP 与 MySQL 搭配的优势
  • 深入浅出:PHP中的变量与常量全解析
  • 初步简单的理解什么是库,什么是静态库,什么是动态库
  • 从ctfwiki开始的pwn之旅 3.ret2syscall
  • 使用 httputils + protostuff 实现高性能 rpc
  • 系统思考—战略共识
  • Java版-速通数据结构-树基础知识
  • 详尽的oracle sql函数
  • SAP IDOC Error VG205