本题思路较为简单,sum()函数 + join连接 select g.id,g.name,g.weight,t.s from goods g join # 将goods表同表t按商品id连接 (select goods_id gi,sum(count) s from trans group by gi) t # 将商品id以及该商品的购买总数量建为表t on g.id = t.gi where g.weight < 50 # 筛选重量超过50g的商品 and t.s > 20 # 筛选购买总数超过20次的商品 order by g.id # 按商品id升序排列