【MySQL】○番目のデータを取ってこよう
テーブル内で○番目を求める方法を見てみましょう。
動画はこちらです。
今回使用するデータはこちらになります。
1 並び替えを行う
並び替えはorder byで行うことができます。
select * from person order by age desc;
次のように並び替えることができました。
2 上位○個を取ってくる
Limitを使っていきます。
select * from person order by age desc limit 5;
下のように特定の数を取ってきました。
これによって、先頭から○個を取ることができました。
3 ○番目を取ってくる
3ー1 Limitだけで行う
次のように行うことで○番目から△個取ってきます。
select * from person order by age desc limit 2, 1;
今回であれば2番目から1個取ってくることで、2番目を求めることができます。
ただ、先頭が0番目からスタートしているので注意が必要です。
3ー2 offsetで開始位置を指定
下のようにoffsetを使うことで同様の結果を得ることができます。
select * from person order by age desc limit 1 offset 2;
offsetは開始位置を表します。
今回も0番目から始まっているので注意が必要です。
4 特定のグループの中での番号を確認する
では最後に、特定のグループの中での何番目などを求めてみましょう。
select * from person where sports_group="red" order by age desc;
select * from person where sports_group="red" order by age desc limit 3;
このように求めることができました。
今回は以上です。
サポートをしていただけたらすごく嬉しいです😄 いただけたサポートを励みに、これからもコツコツ頑張っていきます😊