select .. group by

sql 复制代码
<select id="selectLostTable" resultType="java.lang.Long">
    SELECT COUNT(0)
    FROM (
        SELECT trade_type,
               store_code,
               material_code,
               ANY_VALUE(store_name)        AS store_name,
               ANY_VALUE(material_name)     AS material_name,
               SUM(sub_quantity)            AS sub_quantity,
               ANY_VALUE(sub_unit)          AS sub_unit,
               SUM(main_quantity)           AS main_quantity,
               ANY_VALUE(main_unit)         AS main_unit,
               ANY_VALUE(materiel_classify) AS materiel_classify,
               ANY_VALUE(specification)     AS specification,
               ANY_VALUE(production_date)   AS production_date,
               ANY_VALUE(warranty_day)      AS warranty_day,
               ANY_VALUE(warranty_date)     AS warranty_date,
               ANY_VALUE(purchase_sale_save) AS purchase_sale_save,
               ANY_VALUE(order_date)        AS order_date
        FROM wms_store_ledger
        WHERE trade_type IN ('product_in_store', 'get_material')
          AND materiel_classify != 'P'
        GROUP BY trade_type, store_code, material_code
    ) AS tmp_count
</select>

group by 分组的sql,select的字段,必须遵守"选分组列或聚合"规则。

要获取其他行数据,如果是分组后,该列数据肯定一致,或无所谓取哪个,可以用 ANY_VALUE() 告诉数据库"随便拿一个"。

相关推荐
hey_sml5 分钟前
JAVA每日一学---CompletableFuture中thenApply与thenCompose区别详解
java·开发语言
Doraemomo8 分钟前
数据结构-环形链表
java·数据结构·链表
萧瑟余晖2 小时前
Java深入解析篇十七之SpringCloud
java·开发语言
IvorySQL2 小时前
PostgreSQL 日报 | JOIN 与外键优化(8 月 9 日)
数据库·postgresql
是未才2 小时前
从输入 URL 到页面返回:DNS、路由、TLS 与 HTTP 完整链路
java·后端·计算机网络
ltl2 小时前
自治数据库十年回顾:Peloton、NoisePage、OtterTune 到云原生 auto-tuning
数据库
ttod_qzstudio2 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
萧瑟余晖3 小时前
Java深入解析篇十七之Spring Security
java·开发语言·spring
灯澜忆梦4 小时前
【MySQL10】进阶篇 | 索引_#2性能优化
数据库·sql·mysql·性能优化
不老刘4 小时前
【Java入门】Java服务部署方式全景对比:从java -jar到K8s
java·kubernetes·jar