概要
SQLって何から覚えたらいいの?人向け
最低限覚えたほうがいい項目を記述してます。
使い方や詳細などは別の書籍などで確認してね。
SQL分類を覚えよう
SQLには大きく分けて、3種類存在する。
- DML (Data Manipulation Language データ操作)
- データ作成、読み取り、更新、削除を行う
- DDL (Data Definition Language データ定義)
- テーブル作成、更新、削除を行う
- DCL (Data Control Language データ制御)
- 権限管理をする
DDLとDCLは管理者寄りのコマンドなので、
DML > DDL > DCLの順番で覚えていこう。
DMLの基本を覚えよう
DMLの分類を覚えよう
DMLの操作命令には大きく分けて、4つある
- SELECT
- データを読み取る
- UPDATE
- データを更新する
- DELETE
- データを削除する
- INSERT
- データを作成する
Railsなんかでよく言われるCRUDと同じだと思ってくれればいい。
まずは使用頻度の高いSELECTから覚えていこう。
SELECTの基本を覚えよう
基本の文法は以下の通り
SELECT 取得対象列名
FROM 取得対象テーブル名
テーブルを指定し、更に列名を指定することで、
全行の指定した列のデータを取得することが出来る。
また複数列も指定出来る。
SELECT 取得対象列1, 列2, 列3, ...
FROM 取得対象テーブル名
全ての列を指定したい場合は「*」を使えば良い。
SELECT *
FROM 取得対象テーブル名
UPDATEの基本を覚えよう
基本の文法は以下の通り
UPDATE 更新対象テーブル名
SET 更新対象列名=代入後の値
テーブルを指定し、更新したい列名に更新値を指定することで
全行の指定した列のデータを更新出来る。
複数列も更新出来る。
UPDATE 更新対象テーブル名
SET 更新対象列1=代入後の値, 更新対象列2=代入後の値, ...
DELETEの基本を覚えよう
基本の文法は以下の通り
DELETE
FROM 削除対象テーブル名
指定したテーブルの全行を削除
テーブル自体を消すわけではなく、テーブルの中身を消すだけ。
INSERTの基本を覚えよう
基本の文法は以下の通り
INSERT INTO 作成対象テーブル名
作成対象列名1, 列名2, 列名3, ...
VALUES 作成後の値1, 値2, 値3, ...
作成対象テーブル内にデータつまり行を作成
どの列にどの値を入れるかを順番に指定していく。
↑の例だと、列名1に値1が入り、列名3に値3が入る。
条件分岐の基本を覚えよう
↑の基本だけでは、明らかに実践に使えないことが何となく分かるかと思う。
例えば、↑の基本通りDELETEを使うと、全データが消えてしまうので、
Qiitaで例えると、ある記事の削除ボタンを押したら、全ての記事が消えてしまうようなものだ。
ということで、ある条件に一致した(TRUEとなる)データだけ消したり、更新出来るようにしたい。
条件分岐の基本は以下の通り
INSERT以外の命令
WHERE 条件式
INSERTにはWHEREを使うことは出来ない。
条件式はTRUEorFALSEになるように記述しよう。
WHERE weight > 60
例えば、↑の例だと、列名1が60より
大きいデータの場合、TRUE
それ以外のデータの場合、FALSEとなります。
↓のテーブルに対して使うと、
田中さんはFALSE
山田さんはTRUE
渡辺さんはTRUEとなります。
テーブル名:weight_table
name | weight |
---|---|
田中 | 55 |
山田 | 64 |
渡辺 | 70 |
このテーブルを使って、
SELECT,UPDATE,DELETEを使ってみよう。
SELECT(条件分岐あり)を覚えよう
条件分岐ありSELECT
SELECT name
FROM weight_table
WHERE weight >= 65
得られたデータ
name |
---|
渡辺 |
UPDATE(条件分岐あり)を覚えよう
UPDATE weight_table
SET weight=80
WHERE name='山田'
更新後のテーブル
name | weight |
---|---|
田中 | 55 |
山田 | 80 |
渡辺 | 70 |
DELETE(条件分岐あり)を覚えよう
DELETE
FROM weight_table
WHERE weight < 60
削除後のテーブル
name | weight |
---|---|
山田 | 64 |
渡辺 | 70 |
比較演算子の基本を覚えよう
条件式に使える「>」などを比較演算子という
↑では何となく感覚的に使っていた比較演算子だが、
使えるものは決まっているので、覚えよう。
比較演算子 | TRUEになる条件 |
---|---|
= | 両辺の値が等しい |
< | 左辺より右辺の値が大きい |
> | 左辺より右辺の値が小さい |
<= | 左辺は右辺の値以下 |
>= | 左辺は右辺の値以上 |
<> | 両辺の値が等しくない |
「<>」は少し見慣れないかな。
「!=」とかはよく見るけど。