SQLの基本についてまとめました。
データベースが扱えるようになると、エンジニアとして出来ることの幅が増えます。
ぜひ最後までお読みください!
【SQL】基本のまとめ | 初心者向け
1. SQLとは
SQLとは、データベース管理システムでデータの操作や定義をおこなうためのデータベース言語のことをいいます。
1-1. データベースとは
データベースとは、決まった形式で整理されたデータの集まりのことです。
大量のデータを扱いやすいように整理して保存し、管理します。
1-2. RDBとは
RDBとは、リレーショナル・データベース(Relational DataBase)の略です。
データを表形式で管理します(ExcelやGoogleスプレッドシートのような形です)。
RDBでの重要なワードは以下の通りです。
・表:「テーブル」と呼びます
・縦の列:「カラム」と呼びます
・横の列:「レコード」と呼びます
基本中の基本ですので、しっかり覚えておきましょう。
1-3. クエリとは
クエリとは、データベースに送る命令のことです。
SELECT、UPDATE、DELETE、INSERTなどがあります。
2. 基本構文① SELECT
SELECTは、テーブルから「どのカラムのデータを取得するか」を指定します。
2-1. FROM
FROMは、SELECTで選んだカラムが「どのテーブルのカラムか」を指定します。
SELECTとFROMを使用したクエリ
SELECTとFROMを使用して作成したクエリは、以下のようになります。
SELECT name, age FROM users;
このクエリは「usersテーブル」から、「nameカラム」と「ageカラム」のデータを指定して取得しています。
2-2. *
*(アスタリスク)は、テーブルから「すべてのカラムのデータを取得する」場合に使用します。
2-3. WHERE
WHEREは、テーブルから「どのレコードを取得するか」を指定します。
*とWHEREを使用したクエリ
*とWHEREを使用して作成したクエリは、以下のようになります。
SELECT * FROM users
WHERE city = ‘Tokyo’;
このクエリは、「usersテーブル」から、「cityがTokyo」であるレコードの「すべてのカラム」のデータを指定して取得しています。
2-4. LIKE
LIKEは、テーブルから「ある文字を含むデータ」を取得したい場合に使用します。
2-5. %
%(ワイルドカード)は、どんな文字列にも一致することを指す記号のことです。LIKEと組み合わせて使用します。
LIKEと%を使用したクエリ
SELECT * FROM users
WHERE city = ‘Fuku%’;
このクエリは、「usersテーブル」から、「cityがFukuで始まる」レコードの「すべてのカラム」のデータを指定して取得しています(cityがFukui, Fukuoka, Fukushimaなどのデータを取得します)。
2-6. NOT
NOTは、テーブルから「その条件を満たさない」データを取得する場合に使用します。
NOTを使用したクエリ
SELECT * FROM users
WHERE NOT age = 5 ;
このクエリは、「usersテーブル」から、「ageが5ではない」レコードの「すべてのカラム」のデータを指定して取得しています。
2-7. NULL
NULLは、「データが何も保存されていない」ことを意味します。
NULLであるデータを取得するには、以下のように「IS NULL」を使用します。
IS NULLを使用したクエリ
IS NULLを使用して作成したクエリは、以下のようになります。
SELECT * FROM users
WHERE age IS NULL;
このクエリは、「usersテーブル」から、「ageがNULLである」レコードの「すべてのカラム」のデータを指定して取得しています。
NULLではないデータを取得したい場合は、「IS NOT NULL」を使用します。
IS NOT NULLを使用したクエリ
IS NOT NULLを使用して作成したクエリは、以下のようになります。
SELECT * FROM users
WHERE age IS NOT NULL;
このクエリは、「usersテーブル」から、「ageがNULLでない」レコードの「すべてのカラム」のデータを指定して取得しています。
3. 基本構文② INSERT INTO
INSERT INTOは、テーブルに「新しくレコードを挿入する」場合に使用します。
INSERT INTOを使用したクエリ
INSERT INTOを使用して作成したクエリは、以下のようになります。
INSERT INTO users(name, age, city)
VALUES(‘Ken’, 4, ‘Kyoto’);
このクエリは、「usersテーブル」に新しくレコードを挿入しています。
4. 基本構文③ UPDATE
UPDATEは、テーブルの「データを更新する」場合に使用します。
UPDATEを使用したクエリ
UPDATEを使用して作成したクエリは、以下のようになります。
UPDATE users
SET age = 5, city = ‘Osaka’
WHERE id = 3;
このクエリは、「usersテーブル」のidが3のデータの「age」と「city」を更新しています。
UPDATEを使用する際の注意点
UPDATEを使用する際に、注意することが2点あります。1.WHEREで更新するレコードを指定しないと、カラム内の全データが更新されてしまう
2.UPDATE実行後は、データを元に戻すことができない
このため、UPDATEを実行する前に「必ずSELECTで操作するデータを確認する」癖をつけておきましょう。
5. 基本構文④ DELETE
DELETEは、テーブルの「レコードを削除する」場合に使用します。
DELETEを使用したクエリ
DELETEを使用して作成したクエリは、以下のようになります。
DELETE FROM users
WHERE id = 3;
このクエリは、「usersテーブル」のidが3のレコードを削除しています。
DELETEを使用する際の注意点
DELETEを使用する際に、注意することが2点あります。
1.WHEREで更新するレコードを指定しないと、テーブル内の全データが削除されてしまう
2.DELETE実行後は、データを元に戻すことができない
このため、UPDATEと同じく、DELETEを実行する前に「必ずSELECTで操作するデータを確認する」癖をつけておきましょう。
6. おわりに
今回はSQLの基礎について解説しました。
SQLは、便利な命令や操作がまだまだたくさんあります。
気になった方はぜひ、参考記事を読んだり、ご自身で調べてみたりしてください。