即時通訊工具試圖做的是列出所有類別及其帖子,但只限制每個類別的帖子。並排除沒有任何帖子的類別。MySQL的子選擇限制
我這樣做了兩個查詢,雖然,得到所有類別有帖子,循環的結果,並獲得每個類別ID的X數量的帖子。
如何在1個查詢中執行此操作?
編輯:這是我完成的,到目前爲止..
SELECT p.post_id, c.category_id
FROM category as c
JOIN posts AS p ON p.category_id = c.category_id
WHERE
FIND_IN_SET(p.post_id, (
SELECT SUBSTRING_INDEX(a.post_ids, ',', 10)
FROM
(
SELECT GROUP_CONCAT(b.post_id) AS post_ids, b.category_id
FROM posts as b
GROUP BY b.category_id
) AS a
WHERE a.category_id = c.category_id
))
使用變量來模擬ROW_NUMBER。 –
給我們一些東西。你的數據庫模式是什麼?你試過什麼了? – netcoder
更新了我的帖子.. – Gene