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

查询同表中origin_id为null记录的关联子项计数返回全0问题

问题解决:统计queue_items表中origin_id为null条目的关联记录数

你的SQL问题出在子查询没有区分主表和子表的别名,导致子查询里的queue_items.origin_id = queue_items.id是在子查询自身的行内做比较(也就是找origin_id等于自身id的记录),而不是关联主查询里的id。

修正后的子查询写法

SELECT 
    q1.id,
    q1.source_url,
    q1.origin_id,
    (SELECT 
            COUNT(*)
        FROM
            queue_items q2
        WHERE
            q2.origin_id = q1.id) AS originCount
FROM
    queue_items q1
WHERE
    q1.origin_id IS NULL

高效替代写法(适合大数据量)

如果表中数据较多,用LEFT JOIN+GROUP BY的方式性能更优:

SELECT 
    q1.id,
    q1.source_url,
    q1.origin_id,
    COUNT(q2.id) AS originCount
FROM
    queue_items q1
LEFT JOIN queue_items q2 ON q2.origin_id = q1.id
WHERE
    q1.origin_id IS NULL
GROUP BY q1.id, q1.source_url, q1.origin_id

两种写法都能正确统计每个origin_id为null的条目,被其他行作为origin_id的记录数量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 19:38:15