postgres=# select *, ctid from t;
index | ctid
------+-------
1 | (0,1)
2 | (0,2)
3 | (0,3)
4 | (0,4)
(4 rows)
1번 레코드를 5번 으로 업데이트하면
postgres=# update t set index=10 where index=1;
UPDATE 1
postgres=# select *, ctid from t;
index | ctid
------+-------
2 | (0,2)
3 | (0,3)
4 | (0,4)
5 | (0,5)
(4 rows)
이것을 다시 순서대로 해주려면
VACUUM FULL ! 하면 됩니다.
postgres=# VACUUM FULL t;
VACUUM
postgres=# select *, ctid from t;
index | ctid
------+-------
2 | (0,1)
3 | (0,2)
4 | (0,3)
5 | (0,4)
(4 rows)
'PostgeSQL' 카테고리의 다른 글
[PostgreSQL] WITH 문의(Query) (0) | 2014.05.20 |
---|---|
[PostgreSQL] Create/Drop/Restore 시 batch-file 만들기(환경변수설정포함) (0) | 2014.05.16 |
[MFC] 라이브러리 libpq를 이용한 C프로그래밍 (DB연동) (2) | 2014.04.17 |
[PostgreSQL] 제약조건, Constraint(NOT NULL, UNIQUE, PRIMARY KEY(기본키), FOREIGN KEY(외래키)) (0) | 2014.03.28 |
[PostgreSQL] 시작날짜 끝날짜 사이 중간값들 구하기 (0) | 2014.03.28 |