ユーザーが 2 つの異なるテーブルに送信したエントリの数でランク付けしようとしています。
テーブル gvr:
rid | jid
---------------
1 54
2 54
3 54
4 75
5 75
テーブルは次のとおりです。
sid | jid
---------------
1 54
2 54
3 75
4 75
5 23
6 23
望ましい結果:
jid | overall_cnt | gvr_cnt | gos_cnt
----------------------------------
54 5 3 2
75 4 2 2
23 2 0 2
私は持っている:
(SELECT jid, count(*) gvr_count
FROM gvr
WHERE jid IS NOT NULL
GROUP BY jid)
UNION ALL
(SELECT jid, count(*) gos_count
FROM gos
WHERE jid IS NOT NULL
GROUP BY jid)
しかし、これはひどく間違っています。私は自分の状況に似た他の投稿を探していましたが、あまり価値のあるものはまだ見つかりませんでした. データ操作を PHP にオフロードすることを考えていますが、1 つのクエリで実行できると便利です。