본문 바로가기

IT Data/#DataBase

자동증감이 아닌 최대치를 조회하여, 기본키값 지정해 주기



MSSQL
 SELECT CONVERT(VARCHAR,GETDATE(),112) AS dt                                     
      ,RIGHT('000'+CONVERT(VARCHAR,ISNULL(RIGHT(MAX(SCREEN_NO),3),0)+1),3) AS seq 
FROM CS_SCREEN_INFO WHERE CONVERT(VARCHAR,GETDATE(),12)+'000' < SCREEN_NO         

SELECT TO_CHAR(SYSDATE,'YYYYMMDD') AS dt                                     
      ,LPAD(NVL(SUBSTR(MAX(SCREEN_NO),9),0)+1,3,'0') AS seq 
FROM CS_SCREEN_INFO WHERE SCREEN_NO > TO_CHAR(SYSDATE,'YYYYMMDD')||'000'  

오른쪽 세자리가 가장 큰 값을 불러온다.

오늘의 날짜를 불러와서, 오늘 날짜 기준. 처음으로 등록된 자료부터 001,002,003... 의 값이 입력된다.

'IT Data > #DataBase' 카테고리의 다른 글

MSSQL UTF-8 데이터 입력하는 방법  (0) 2014.11.19
[MS SQL] 기본키 추가하기  (0) 2013.07.29
[MSSQL] 문법정리  (0) 2013.07.15