1.起動と停止
・起動 / 停止
・設定ファイル
pg_ctl
2.ユーザーとデータベース作成・削除
・ユーザー作成 / 削除
・データベース作成 / 削除
createuser / dropuser / createdb / dropdb
3.psql (データベースへのアクセスと表示)
・データベースへのアクセス
・データベースの表示
psql
4.psql (バックスラッシュコマンド)
・データベース表示
・テーブル一覧表示
・テーブル表示
・psqlの終了
・主要バックスラッシュコマンド
\l / \d / \q
5.テーブルの作成・削除
・テーブルの作成
・テーブルの削除
・NOT NULL 制約
・UNIQUE 制約
・PRIMARY 制約
・参照整合性制約
・主要なデータ型
CREATE TABLE / DROP TABLE
6.レコードの追加
・レコードの追加
・値を明示的に追加
INSERT INTO ~ VALUES
7.テーブルからデータを取り出す
・データを取り出す
・取り出す件数を指定する
・取り出す範囲を指定する
・列に対する演算
SELECT ~ FROM
8.テーブルを結合する
・結合
・エイリアスの利用
・総当りで結合
・同じ列名で結合
・条件で結合
・値が等しいことを条件に結合
・結合する相手のデータが存在しない場合NULLで補完し表示。
AS / CROSS JOIN / NATURAL JOIN / JOIN~ON / JOIN~USING / [LEFT | RIGHT] OUTER
JOIN
9.レコードを更新する
・レコードを更新する
UPDATE
10 .レコードを削除する
・レコードを削除する
DELETE
11 .シーケンスとシリアル型
・シーケンスの利用
・シリアル型の利用
CREATE SEQUENCE / NEXTVAL / CURRVAL / SERIAL
12 .テーブルの属性変更
・列の追加
・列の削除
・ディフォルト値のセット、解除
・NOT NULLの設定
・列名の変更
・テーブル名の変更
・参照整合性の追加・削除
ALTER TABLE / ADD COLUMN / DROP COLUMN / [SET | DROP] DEFAULT / SET NOT NULL
/ RENAME COLUMN / RENAME TO / [ADD | DROP] CONSTRAINT
13 .色々なSELECT
・重複を取り除く
・結果を別テーブルに格納
・グループ単位で集約
・ソート
・NULLIF
DISTINCT ON / SELECT ~ INTO / GROUP BY / HAVING / ORDER BY / NULLIF
14 .サブクエリー
・WHEREで"=",">",を利用
・IN
・EXISTS
・FROM内でテーブルの代わりに利用
・ターゲットリストで利用
・ALL(すべて)/ANY(どれか)
IN / EXISTS / ALL / ANY
15 .色々なSELECT(2)
・2つ以上のSELECT結果をまとめる
・2つ以上のSELECT結果の共通部分を抽出
・2つ以上のSELECT結果の共通部分以外を抽出
UNION / INTERSECT / EXCEPT
16 .INDEXとCLUSTER
・インデックス作成
・インデックス削除
・複合インデックス
・部分インデックス
・INDEXにあわせてテーブルを並び替える
CREATE INDEX / DROP INDEX / CLUSTER
17 .トランザクションとロック
・トランザクションの開始
・トランザクションの終了
・トランザクションの異常終了
・アクセスモード(READ WRITE / READ ONLY)
・分離レベル
・明示的ロック
[BEGIN | START TRANSACTION] / [END | COMMIT WORK] / [ABORT | ROLLBACK WORK]
/ SET TRANSACTION / [READ WRITE | READ ONLY] / ISOLATION LEVEL SERIALIZABLE
/ LOCK ~ IN SHARE EXCLUSIVE MODE
18 .アクセス権の付与
・グループ管理
・テーブル / ビュー / シーケンス
・データベース
・アクセス権の確認
CREATE GROUP / GRANT / REVOKE