2011-01-12 16 views
0

私はMySQLを使用しています、アイテムと5つのカテゴリ(1つのIDフィールド、autoincr、PK)を持つデータベーステーブルを持っています。カテゴリを使用すると、各カテゴリの最新の1つのアイテムが返されます。どのようにして各カテゴリの上位5アイテムを1つのクエリで取得できますか? SQLクエリの必要性を助け、各カテゴリの最新5リストを選択

はありがとう

答えて

0

あなたはこれを適切に嫌いになるだろう...

(select * from items where category_id=1 order by add_date desc limit 5) 
union 
(select * from items where category_id=2 order by add_date desc limit 5) 
union 
(select * from items where category_id=3 order by add_date desc limit 5) 
union 
(select * from items where category_id=4 order by add_date desc limit 5) 
union 
(select * from items where category_id=5 order by add_date desc limit 5); 
+0

私はこれを知っているが、これよりも良い任意のもの? –

+0

私は5小規模なクエリで細かく推測する? (あなたがそれを好むかわからない)またはストアドプロシージャとしてラップする? – ajreal

関連する問題