2012-09-28 52 views
-3

我有一個簡單的數據:如何使用php mysql獲得產品限制?

products (id, name, category_id) 
(1, 'Test 1', 1) 
(2, 'Test 2', 1) 
(3, 'Test 3', 1) 
(4, 'Test 4', 2) 
(5, 'Test 5', 2) 
(6, 'Test 6', 2) 
(7, 'Test 7', 3) 

如何的想法,得到2產品在1 CATEGORY_ID 例如:

(1, 'Test 1', 1) 
(2, 'Test 2', 1) 
(4, 'Test 4', 2) 
(5, 'Test 5', 2) 
(7, 'Test 7', 3) 
+6

這只是最頻繁的一個微小的變化對所有這些重複的問題重複 - 「每組最多」。請搜索類似的問題,自己去做,然後展示你的嘗試。 –

+0

試試你的SQL到GROUP BY category_id – bodi0

+1

看看「相關」邊欄中的第一個問題。 – Barmar

回答

2

試試這個,

SELECT id, name, category_id 
FROM products p 
WHERE 
(
    SELECT count(*) 
    FROM products f 
    WHERE f.category_id = p.category_id AND 
      f.id <= p.id 
) <= 2; 

SQLFiddle Demo