nissy.dev

SQLの基礎

5 min read
  • #note
  • #sql
目次

新卒研修では細かな SQL 操作については扱わなかったが、一度覚えなおした方が良いと感じて勉強した時のメモ。

テーブル単位の操作

レコード単位の操作

クエリ例

# テーブル生成
CREATE TABLE employee (​
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,​
    name VARCHAR(10) NOT NULL,​
    joined_at DATE NOT NULL​
);

# スキーマ変更
# カラムの追加をするクエリ
ALTER TABLE belong_to ADD test_column VARCHAR(100);

# having の例
SELECT organization_id, COUNT(*) AS num​ FROM belong_to
GROUP BY organization_id​
HAVING num >= 2;

# クエリでとってきた値を使いながら、SQL を構築することも可能 (かっこの部分をサブクエリと呼ぶ)
# 最大値を除いた平均値を取得するクエリ
SELECT AVG(result) FROM grade​
WHERE result != (SELECT MAX(result) FROM grade);

参考資料