【SQL】実データを確認したい時に、取得レコードを制限する

データベースのイメージ画像 データベース

OracleDBについての記事です。MySQLとはクエリが異なる場合があります。

「このテーブルの中身どうなってるんだろう」というときがある。

このとき、何も考えず「select * from テーブル名」とかやってはいけない。

大量のデータが格納されている場合は、DBに対する負荷が高い上に、
自分としてもそんな大量のデータは必要ないためだ。

こんなときは取得レコードを制限して取得すると良い。

発行クエリ

select * from user where rownum <= 10;

これは「user」というテーブルから、「10行以下」という条件で
全ての要素を取得している。

このようにすることでサンプル10件のデータを取得することができる。

ほかの条件と合わせて取得したい場合は下記のようにandでつなげば良い。

select * from user where rownum <= 10 and id = '0001';

これは、「user」というテーブルから、「id」が0001と一致するものを最大10件で取得している。

まとめ

  • DBからは必要な分だけとること
  • とりあえずrownumで制限しておくと負荷がかかりにくいので安心できる
  • 初心者のうちはとりあえずrownumを付けておこう
タイトルとURLをコピーしました