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

基于另一表quantity求和结果,计算两表job_id对应quantity差值的SQL实现

需求实现:表一quantity减去表二聚合后的对应值

现有表数据

表一(假设表名为table_one)

job_idquantity
29480
29473
294934
29504

表二(表名为test_table,位于arr_database库)

job_idquantity
110
294910
294920

表二聚合结果

执行以下SQL后得到表二按job_id聚合的求和结果:

SELECT job_id, sum(quantity) FROM arr_database.test_table group by job_id;
job_idquantity
110
294930

需求

将表一中对应job_id的quantity值减去表二聚合后的求和值,得到目标结果:

job_idquantity
29480
29473
29494
29504

实现SQL语句

SELECT 
    t1.job_id,
    t1.quantity - COALESCE(t2.sum_quantity, 0) AS quantity
FROM 
    table_one t1
LEFT JOIN 
    (SELECT job_id, SUM(quantity) AS sum_quantity 
     FROM arr_database.test_table 
     GROUP BY job_id) t2
ON 
    t1.job_id = t2.job_id;

说明

  • 使用LEFT JOIN确保保留表一的所有job_id记录
  • COALESCE函数处理表二中无对应job_id的情况,此时用0替代求和值,保证减法运算结果为表一原数值

内容的提问来源于stack exchange,提问作者Mithun Sarker

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 05:22:37