同じ親 ID を持つ最大 3 つのレコードの取得に関する SQL
table imginfo
id fid miaoshu
1 3 ああああああ
2 3 ssssss
3 3 ふふふふ
4 4 うううううう
5 5 gfgfgfgfgf
6 5 ddfdfdfd
7 9 fdffdfd
8 9 dfdfdfd
9 9 dfdfdf
10 9 ポポポッ
11 3 tgtrttyrtyry
12 5 fdsjfdfdl
SELECT * FROM `imginfo` WHERE fid in(3,5,9) ORDER BY `id` DESC
上記ステートメントの fid 3、5、9 の内容はすべて取得されています。
同じ fid を持つ項目を最大 3 つだけ取得したいのですが、順序は変更されません。 SQL ステートメントを記述するにはどうすればよいですか?
アドバイスをいただき、専門家にアドバイスを求めてください。ありがとうございました!
select a.* from imginfo a where 3 > (select count(*) from imginfo where fid = a.fid and id > a.id and fid in(3,5,9)) and fid in(3,5,9) order by a.fid,a.id