본문 바로가기

프로그래밍/MSSQL

[MSSQL] SEQUENCE 시퀀스

반응형

 

 

 

시퀀스를 이용해서 별도의 유니크한 번호를 생성해보자

 

 

시퀀스 생성

CREATE SEQUENCE [schema_name . ] sequence_name  
    [ AS [ built_in_integer_type | user-defined_integer_type ] ]  
    [ START WITH <constant> ]  
    [ INCREMENT BY <constant> ]  
    [ { MINVALUE [ <constant> ] } | { NO MINVALUE } ]  
    [ { MAXVALUE [ <constant> ] } | { NO MAXVALUE } ]  
    [ CYCLE | { NO CYCLE } ]  
    [ { CACHE [ <constant> ] } | { NO CACHE } ]  
    [ ; ] 

 

 

 

 

예제

다음과 같은 정수형 시퀀스를 생성해보자

 

CREATE SEQUENCE [dbo].[SEQ_TEST_NO] 
AS [int]                -- 정수형
START WITH 0            -- 0 부터 시작
INCREMENT BY 1          -- 1씩 증가 (-1일 경우 1씩 감소)
MINVALUE -2147483648    -- 최소값
MAXVALUE 2147483647     -- 최대값
CACHE

 

 

 

이제, 생성한 시퀀스를 사용해보자

시퀀스 값 조회해보면, 위에서 생성한대로 정수형 0부터 시작하여 1씩 증가하는 값을 반환한다는 것을 볼 수 있다.

 

SELECT NEXT VALUE FOR 시퀀스명

 

SELECT NEXT VALUE FOR SEQ_TEST_NO    -- 0
SELECT NEXT VALUE FOR SEQ_TEST_NO    -- 1
SELECT NEXT VALUE FOR SEQ_TEST_NO    -- 2

 

 

 

...더보기

[출처]

https://docs.microsoft.com/ko-kr/sql/t-sql/statements/create-sequence-transact-sql

 

 

반응형