ホームページ  >  記事  >  バックエンド開発  >  同じ親 ID を持つ最大 3 つのレコードの取得に関する SQL

同じ親 ID を持つ最大 3 つのレコードの取得に関する SQL

WBOY
WBOYオリジナル
2016-06-13 12:48:43802ブラウズ

同じ親 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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。