クエリ (SELECT)条件 (WHERE)ソート (ORDER BY)集計関数結合 (JOIN)挿入 (INSERT)更新 (UPDATE)削除 (DELETE)テーブル管理制約サブクエリ文字列/日付関数
#クエリ (SELECT)
| コマンド | 説明 | |
|---|---|---|
SELECT * FROM table | 全カラムを取得 | |
SELECT col1, col2 FROM table | 特定カラムを取得 | |
SELECT DISTINCT col FROM table | 重複を除いて取得 | |
SELECT col AS alias FROM table | 別名を使用 | |
SELECT * FROM table LIMIT 10 | 結果数を制限 | |
SELECT * FROM table OFFSET 5 | 結果をスキップ |
#条件 (WHERE)
| コマンド | 説明 | |
|---|---|---|
WHERE col = value | 等しい | |
WHERE col <> value | 等しくない | |
WHERE col > value | より大きい | |
WHERE col >= value | 以上 | |
WHERE col < value | より小さい | |
WHERE col <= value | 以下 | |
WHERE col BETWEEN a AND b | 範囲内 | |
WHERE col IN (v1, v2, v3) | リスト内 | |
WHERE col LIKE '%pattern%' | パターンマッチング | |
WHERE col IS NULL | NULLチェック | |
WHERE col IS NOT NULL | NOT NULLチェック | |
WHERE cond1 AND cond2 | AND条件 | |
WHERE cond1 OR cond2 | OR条件 | |
WHERE NOT condition | NOT条件 |
#ソート (ORDER BY)
| コマンド | 説明 | |
|---|---|---|
ORDER BY col | 昇順ソート | |
ORDER BY col ASC | 昇順(明示的) | |
ORDER BY col DESC | 降順ソート | |
ORDER BY col1, col2 | 複数カラムでソート | |
ORDER BY col NULLS FIRST | NULLを先頭に | |
ORDER BY col NULLS LAST | NULLを最後に |
#集計関数
| コマンド | 説明 | |
|---|---|---|
COUNT(*) | 行数 | |
COUNT(col) | NULL以外をカウント | |
COUNT(DISTINCT col) | ユニーク値をカウント | |
SUM(col) | 合計 | |
AVG(col) | 平均 | |
MIN(col) | 最小値 | |
MAX(col) | 最大値 | |
GROUP BY col | グループ化 | |
HAVING condition | グループのフィルタ |
#結合 (JOIN)
| コマンド | 説明 | |
|---|---|---|
INNER JOIN t2 ON t1.col = t2.col | 内部結合 | |
LEFT JOIN t2 ON t1.col = t2.col | 左外部結合 | |
RIGHT JOIN t2 ON t1.col = t2.col | 右外部結合 | |
FULL OUTER JOIN t2 ON ... | 完全外部結合 | |
CROSS JOIN t2 | クロス結合 | |
SELF JOIN (t AS a, t AS b) | 自己結合 | |
NATURAL JOIN t2 | 自然結合 |
#挿入 (INSERT)
| コマンド | 説明 | |
|---|---|---|
INSERT INTO t (cols) VALUES (vals) | 単一行を挿入 | |
INSERT INTO t VALUES (v1), (v2) | 複数行を挿入 | |
INSERT INTO t SELECT ... | SELECTから挿入 | |
INSERT INTO t DEFAULT VALUES | デフォルト値で挿入 |
#更新 (UPDATE)
| コマンド | 説明 | |
|---|---|---|
UPDATE t SET col = val | 全行を更新 | |
UPDATE t SET col = val WHERE ... | 条件付き更新 | |
UPDATE t SET c1 = v1, c2 = v2 | 複数カラムを更新 | |
UPDATE t SET col = col + 1 | 値をインクリメント |
#削除 (DELETE)
| コマンド | 説明 | |
|---|---|---|
DELETE FROM t | 全行を削除 | |
DELETE FROM t WHERE ... | 条件付き削除 | |
TRUNCATE TABLE t | テーブルを空に(高速) |
#テーブル管理
| コマンド | 説明 | |
|---|---|---|
CREATE TABLE t (col type, ...) | テーブルを作成 | |
DROP TABLE t | テーブルを削除 | |
ALTER TABLE t ADD col type | カラムを追加 | |
ALTER TABLE t DROP COLUMN col | カラムを削除 | |
ALTER TABLE t RENAME TO new | テーブル名を変更 | |
CREATE INDEX idx ON t(col) | インデックスを作成 | |
DROP INDEX idx | インデックスを削除 |
#制約
| コマンド | 説明 | |
|---|---|---|
PRIMARY KEY | プライマリキー | |
FOREIGN KEY REFERENCES t(col) | 外部キー | |
UNIQUE | ユニーク制約 | |
NOT NULL | NOT NULL制約 | |
DEFAULT value | デフォルト値 | |
CHECK (condition) | チェック制約 | |
AUTO_INCREMENT / SERIAL | 自動増分 |
#サブクエリ
| コマンド | 説明 | |
|---|---|---|
WHERE col IN (SELECT ...) | INサブクエリ | |
WHERE col = (SELECT ...) | スカラサブクエリ | |
WHERE EXISTS (SELECT ...) | EXISTSサブクエリ | |
SELECT (SELECT ...) AS col | SELECT句サブクエリ | |
FROM (SELECT ...) AS t | FROM句サブクエリ | |
WITH cte AS (SELECT ...) | CTE(共通テーブル式) |
#文字列/日付関数
| コマンド | 説明 | |
|---|---|---|
CONCAT(s1, s2) | 文字列を連結 | |
UPPER(str) / LOWER(str) | 大文字/小文字変換 | |
LENGTH(str) | 文字列の長さ | |
SUBSTRING(str, start, len) | 部分文字列 | |
TRIM(str) | 空白を除去 | |
REPLACE(str, from, to) | 文字列を置換 | |
NOW() / CURRENT_TIMESTAMP | 現在時刻 | |
DATE(datetime) | 日付を抽出 | |
YEAR(date) / MONTH(date) | 年/月を抽出 | |
DATEDIFF(d1, d2) | 日付の差 |
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.