Railsを使ってたこともあり,active_recordsに頼りきだったため、SQLについて学んで来なかった。今回はスッキリわかるSQL入門を読み、SQLの基礎について学んだため備忘録としてまとめる。
基本的な文法
まず、基本的な文法についてまとめます。
SELECT文(データを取り出す)
SELECT文
SELECT カラム名
FROM テーブル名
WHERE 制限
例:
SELECT 口座番号, 名義, 残高
FROM 口座
WHERE 残高 > 0
INTSERT文(データ追加)
INSERT文
INSERT INTO テーブル名
VALUES (データ追加カラム1, データ追加カラム2, データ追加カラム3)
例:
INSERT INTO 口座
VALUES ('00000202', 'GOTO TARO', 20000)
UPDATE文(データ更新)
UPDATE
UPDATE テーブル名
SET カラム1 = 内容1, カラム2 = 内容2, カラム3 = 内容3
WHERE 制限
例:
UPDATE 口座
SET 名義 = 'ARATA OSORU'
WHERE 口座番号 = '00002222'
DELETE文(削除)
DELETE文
DELETE FROM テーブル名
WHERE 制限
例:
DELETE FROM 口座
WHERE 名義 = 'ARATA OSORU'
応用(よく使う)
SQLのよく使う文法をまとめます。
テーブル結合
テーブル結合
SELECT 選択別リスト
FROM テーブルA
JOIN テーブルB
ON 両テーブルの結合条件
例:
SELECT 取引番号, 日付, 取引事由名
FROM 取引
JOIN 取引事由
ON 取引.取引事由id = 取引事由.取引事由.id
複数のテーブル関連
☆UNION(検索結果を足し合わせた結果を返す)
SELECT 選択別リスト
FROM テーブル1
UNION
SELECT 選択別リスト
FROM テーブル1
例:
SELECT 口座番号, 名義
FROM 口座
UNION
SELECT 口座番号, 名義
FROM 廃止口座
他にも
・EXCEPT(ある集合と別の集合の差をとる)
・INTERSECT(2つのSELECT文に共通する行を集めた集合)
などがある。
大切なこと
息を吸うようにSQL文を打てるようにするためには、毎日SQLを書くことが一番だと思う。
他にもたくさん、修飾句があるので常に学び続ける必要がある。
参考文献
スッキリわかるSQL入門