はじめに
データ分析に必要なSQLの基本をまとめました
データ操作言語(DML)
| 文字 | 用途 |
|---|---|
| SELECT | 列名の検索 |
| FROM | テーブルの選択 |
| WHERE | 条件式の入力 |
| DISTINCT | SELECTの後ろにつけて検索するデータの重複を削除する |
| IS NULL | 条件式でNULLであるものを抽出 |
| BETWEEN | 条件式で下限と上限を指定 |
| IN | 複数の条件式で一つでも当てはまれば抽出 |
| LIKE | ワイルドカード(%、_)を用いて曖昧な検索 |
| ORDER BY,ASC,DESC | レコードを昇順や降順に並び替える |
| JOIN | テーブルのキーを指定して同じ項目を結合 |
| LEFT,RIGHT,FULL OUTER JOIN | 指定した方向の列は全て表示し、一致しないものはNULL |
| CROSS JOIN | テーブルの積を表示 |
| JOIN AS | 自己結合する際にFROM句でASで別名をつけて区別 |
| EXISTS | 存在するか(サブクエリなどで) |
| ANY,SOME | サブクエリなどでいずれかの値を評価 |
| UNION,UNION ALL | SELECTで取得したレコードを統合、ALLをつけると重複分も記述 |
| EXCEPT,MINUS | 上の取得レコードにあって下の取得レコードにないものを取得 |
| INTERSECT | 共通するレコードを取得 |
| INSERT INTO VALUES | レコードを追加 |
| INSERT SELECT | 他のテーブルから取得したレコードを追加 |
| UPDATE | 条件式のところにSETで項目を更新 |
| DELETE FROM | 条件式似合うものをテーブルから削除 |
| SUM ,AVG ,COUNT ,MAX ,MIN | 集計関数として指定した列の様々な計算を行う |
| GROUP BY | 指定した列内で同じ種類のものをまとめて表示 |
| HAVING | 集計関数を条件式に入れたいときに使う |
| +,CONCAT,縦棒2個 | 文字列を連結するときに各DBMSで異なる |
| UPPER,UCASE,LOWER,LCASE | 文字列を大文字や小文字に変換 |
| SUBSTRING,Mid | 文字列の一部を取得。DBMSで異なる |
| TRIM ,LTRIM ,RTRIM | 文字列の左右の空白を削除 |
| TRIM,BOTH,LEADING,TRAILING | 文字列の左右の特定の文字を削除 |
| REPLACE,TRANSLATE | 文字列内の指定した文字を別のものに置き換える |
| CHAR_LENGTH,LEN,LENGTH | 文字列の文字数を取得 |
| OCTET_LENGTH,LENB,LENGTHB,LENGTH | 文字列のバイト数を取得 |
| 数学関数 | 色々な計算 |
| 日付関数 | 日時を取得 |
| 型変換関数 | 数値や文字列、日付の型を入れ替える |
データ定義言語 (DDL)
| 文字 | 用途 |
|---|---|
| CREATE DATABASE | データベースを作成 |
| DROP DATABASE | データベースを削除 |
| ALTER TABLE | テーブルの定義を変更する |
| RENAME TABLE | テーブル名を変更する |
| CREATE VIEW | ビューを作成する |
| CREATE INDEX | インデックスを作成する |
| CREATE USER | ユーザーを作成する |
| GRANT | ユーザーにアクセス権を追加する |
| REVOKU | ユーザーからアクセス権を削除する |
| CREATE TRIGGER | トリガーを作成する |
データ制御言語(DCL)
| 文字 | 用途 |
|---|---|
| BEGIN TRANSACTION | トランザクションを開始する |
| COMMIT | トランザクションを確定する |
| ROLLBACK | トランザクションを取り消す |
| SAVEPOINT | セーブポイントを作成する |
参考サイト