You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MySQL 5.7查询时新增列标记同cp_parent_id分组下cp_version是否为最大值

MySQL 5.7 实现方案

你可以根据数据量选择以下两种兼容MySQL 5.7的实现方式,两种方案都可以得到你期望的输出结果:

方案1:子查询判断(小数据量场景,写法简单)

将以下SQL中的your_table_name替换为你实际的表名即可:

SELECT 
    t1.cp_id,
    t1.cp_name,
    t1.cp_version,
    t1.cp_parent_id,
    IF(t1.cp_version = (SELECT MAX(cp_version) FROM your_table_name t2 WHERE t2.cp_parent_id = t1.cp_parent_id), 1, 0) AS max_version
FROM your_table_name t1;

方案2:分组关联(大数据量场景,性能更优)

先分组计算每个cp_parent_id对应的最大版本号,再和原表关联判断:

SELECT 
    t1.cp_id,
    t1.cp_name,
    t1.cp_version,
    t1.cp_parent_id,
    IF(t1.cp_version = t3.max_ver, 1, 0) AS max_version
FROM your_table_name t1
LEFT JOIN (
    SELECT cp_parent_id, MAX(cp_version) AS max_ver
    FROM your_table_name
    GROUP BY cp_parent_id
) t3 ON t1.cp_parent_id = t3.cp_parent_id;

内容的提问来源于stack exchange,提问作者Amit Rathod

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 12:48:04