반응형
Postgresql 에서는 시퀀스의 불편함을 해결하기 위해 serial 타입을 제공한다.
- serial 조회
select n.nspname as sequence_schema,
c.relname as sequence_name,
u.usename as owner
from pg_class c
join pg_namespace n
on n.oid = c.relnamespace
join pg_user u
on u.usesysid = c.relowner
where c.relkind = 'S' and u.usename = current_user;
- 시퀀스 현재값 / 현재 세션
select currval('seq_name');
- 시퀀스 다음값
select nextval('seq_name');
- 코드 생성규칙 예제
select 'F' || lpad(currval('fac_mng_id_seq') :: varchar, 15, '0');
CURRVAL은 세션에서만 존재하는 임시값으로 아래 같은 오류가 날 수 있음
ERROR: currval of sequence is not yet defined in this session
nextval() 실행 후 조회 하면 됨.
반응형
'DB > Postgresql' 카테고리의 다른 글
docker postgresql 표준 시간대(timezone) 설정 방법 (1) | 2024.11.08 |
---|---|
[Postgresql] 세로 테이블을 가로 테이블로 pivot하기 (crosstab) (0) | 2022.06.10 |