你可以使用這樣的事情,其應用和聚合函數來獲得總數:
SELECT u.user_id,
coalesce(TotalThreads, 0) + coalesce(TotalPosts, 0) Total
FROM users u
LEFT JOIN
(
select user_id, count(thread_id) TotalThreads
from threads
group by user_id
) t
on t.user_id=u.user_id
LEFT JOIN
(
select user_id, count(post_id) TotalPosts
from posts
group by user_id
) p
on p.user_id=u.user_id
WHERE u.user_id='1'
如果你想分隔值,則:
SELECT u.user_id,
coalesce(TotalThreads, 0) TotalThreads,
coalesce(TotalPosts, 0) TotalPosts
FROM users u
LEFT JOIN
(
select user_id, count(thread_id) TotalThreads
from threads
group by user_id
) t
on t.user_id=u.user_id
LEFT JOIN
(
select user_id, count(post_id) TotalPosts
from posts
group by user_id
) p
on p.user_id=u.user_id
WHERE u.user_id='1'
您的點數不正確...... – Ben