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

MyBatis 语法不支持 having 节点

MyBatis 不支持 having 节点

比如在 GROUP BY 之后添加了 HAVING 子句,其内容为SUM(vsbsad.business_income) >= 0,该子句会对分组后的 SUM(vsbsad.business_income) 结果进行过滤,仅保留求和结果不为负数的分组记录。但是试过不支持。可把 having 条件嵌入到 select 语句里,当作一个子查询,然后在外部查询里对该条件进行过滤

<select id="findStoreSaleInfoDetail" resultType="com.test.dto.res.store.StoreSaleBaseInfolDTO">SELECT *FROM (SELECTds.id AS storeId,ds.store_name AS storeName,SUM(vsbsad.business_income) AS businessIncomeFROMstore dsINNER JOINstore_business_di vsbsadONds.id = vsbsad.store_id<where><if test="startDate != null and endDate != null">and vsbsad.sdt between #{startDate} and #{endDate}</if><!-- 新增 storeIds 过滤条件 --><if test="req.storeIds != null and req.storeIds.size() > 0">AND ds.id IN<foreach item="storeId" collection="req.storeIds" open="(" separator="," close=")">#{storeId}</foreach></if></where>GROUP BYds.id,) subqueryWHERE subquery.businessIncome >= 0
</select>    

http://www.mrgr.cn/news/96085.html

相关文章:

  • SQL语句---特殊查询
  • python中的面对对象
  • springboot在feign和线程池中使用TraceId日志链路追踪(最终版)-2
  • string 的接口
  • 【MySQL篇】DEPENDENT SUBQUERY(依赖性子查询)优化:从百秒到秒级响应的四种优化办法
  • mysql增、删、改和单表查询多表查询
  • C++ 异常
  • RAG(Retrieval-Augmented Generation)基建之PDF解析的“魔法”与“陷阱”
  • EF Core 执行原生SQL语句
  • 每天认识一个设计模式-建造者模式:复杂对象的“装配式革命“
  • 05.AI搭建preparationの(transformers01)BertTokenizer实现分词编码
  • EMC知识学习一
  • 2.7 进度控制习题-2
  • 【AI学习】Transformer 模型
  • ffmpeg+QOpenGLWidget显示视频
  • Microi吾码界面设计引擎之基础组件用法大全【内置组件篇·上】
  • Deepseek API+Python 测试用例一键生成与导出 V1.0.4 (接口文档生成接口测试用例保姆级教程)
  • 深度学习框架PyTorch——从入门到精通(10)PyTorch张量简介
  • Windows命令提示符(CMD) 中切换目录主要通过 cd(Change Directory)命令实现
  • WPF InkCanvas 控件详解