0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SQL/Structured Query Language 基礎 #1

0
Posted at

SQLの基礎構文

SQLで欲しいデータを抽出する際は、FROMでテーブルを選択し、SELECTでカラムを指定する。

;(セミコロン)は文の終わりに書く。単文なら必須ではないが、書くことを習慣にするのが良い。

なぜ SELECT カラム → FROM テーブル の順番なのか?

該当するテーブルのカラムを抽出するから、テーブルを先に記述したくなる。
だが、SQLはどういうものを抽出したいか、結果として何が欲しいかを宣言する言語である。
故に、欲しいカラムを宣言(SELECT)して、それはどのテーブル(FROM)にあるのか、という流れになる。

※英語の文章構造によるものらしい。〇〇を選べ(SELECT)、それは◻︎◻︎から(FROM)

⭐️豆知識

DBエンジンは、以下の順でデータを探す。
SQLの文構造と違うのは驚き。。。

  1. FROM(どのテーブルか決定)
  2. WHERE(条件で絞り込み)
  3. GROUP BY(グループ化)
  4. HAVING(グループ条件)
  5. SELECT(カラムを抽出)
  6. ORDER BY(並び替え)
  7. LIMIT(件数制限)

昇順 (ASC)

  • 小さい値から大きい値
  • 文字列の場合はアルファベット・辞書順
  • 日付は古い方から新しい方

その逆が降順 (DESC)

真偽値(BOOLEAN型)

未完了のものや失敗しているものを抽出したい場合(完了しているならTRUE)

WHERE カラム名 = FALSE;

または、true:1、false:0でも表せるので、これでも良い

WHERE カラム名 = 0;

もし"true" or "false"の文字列で判定が保存されている場合

WHERE カラム名 = 'false';

おまけ:未設定(NULL)もfalseと同じ扱いにしたいなら

WHERE カラム名 = FALSE OR カラム名 IS NULL;
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?