【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は、便利な命令や操作がまだまだたくさんあります。

気になった方はぜひ、参考記事を読んだり、ご自身で調べてみたりしてください。

参考記事

https://www.w3schools.com/sql/default.asp