728x90
반응형
Sequence 란?
sequence 는 유일한 값을 생성하게 도와주는 객체이다
보통 id 같이 순차적으로 증가하는 컬럼에 많이 사용한다
Sequence 생성과 삭제
시퀀스명이 seq_idx 인 경우
CREATE SEQUENCE seq_idx; -- 생성
DROP SEQUENCE seq_idx; -- 삭제
Sequence 초기화
SELECT setval('seq_idx', 1, true); -- nextval('seq_idx') = 2
SELECT setval('seq_idx', 1, false); -- nextval('seq_idx') = 1
(nextval 설명은 밑에)
true : 초기화 후 nextval을 사용할 때 초기화된 값에서 +1하여 사용한다
false : 초기화 후 nextval을 사용할 때 초기화된 값을 그대로 사용한다
Sequence 의 현재 값과 다음 값
SELECT currval('seq_idx'); -- 현재값
SELECT nextval('seq_idx'); -- 다음값
Sequence 활용
1. create 시
create table tb_liv
(
id integer DFAULT nextval('tb_liv_idx'),
...
)
2. insert 시
insert into tb_liv(id, ...)
values (nextval('tb_liv_idx'), ...);
728x90
반응형
'DB > PostgreSQL' 카테고리의 다른 글
도분초 위경도 좌표 공간정보로 변환 (좌표 변환) (0) | 2024.10.17 |
---|---|
PostgreSQL 다른 테이블 참조하여 update (0) | 2023.09.18 |
[PostgreSQL] select 결과 insert (0) | 2023.02.01 |
[PostgreSQL] 컬럼 정보 조회 / 컬럼 코멘트 조회 (0) | 2023.01.30 |
PostgreSQL | 테이블/컬럼 정보조회 SQL (0) | 2021.09.30 |