starzware

ITスキル

postgresql

TIPS
pg_dump(基本)

SET PGPASSWORD=password
pg_dump -h localhost -U user -d database > dump_postgres
pg_dump(データのみ)

pg_dump --dataonly -h localhost -U user -d database > dump_postgres
pg_dump(insert文形式)

pg_dump --column-inserts -h localhost -U user -d database > dump_postgres
pg_dump(テーブル指定)

pg_dump -t tbl* -h localhost -U user -d database > dump_postgres
DBに接続しているセッションの確認

SELECT
  procpid, datname, client_addr 
FROM pg_stat_activity 
WHERE datname = 'DB名';
CREATE AS SELECT / INSERT SELECT

-- CREATE AS SELECT
CREATE [テーブル名] 
AS 
SELECT ...
-- INSERT SELECT
INSERT INTO [テーブル名] 
(field1, field2 ...) 
SELECT field1, field2 ... FROM [テーブル名] ...
テーブル変更各種

-- 型変更
ALTER TABLE [table] ALTER COLUMN [field] TYPE [型];
-- 名称変更
ALTER TABLE [table] RENAME COLUMN [field] TO [new_field];
-- カラム追加(末のみ)
ALTER TABLE [table] add [field] [型];
テーブル一覧

SELECT
  *
FROM pg_tables
現在時刻とフォーマット

SELECT TO_CHAR(CURRENT_TIMESTAMP, 'YYYY/MM/DD HH24:MI:SS')
クライアント接続を表示

-- クライアント接続を表示
SELECT * FROM pg_stat_activity WHERE backend_type='client backend';