앞에 채번질문 궁금한 사항 0 6 3,845

by 또 [SQL Query] 티베로 오라클 [2023.12.19 17:40:07]


앞에서  채번은  P20231219-01 로 문의해서 이해를 했는데요

4M23121901 이거는 이렇게 사용하니까 안되나요 ㅠ

SELECT '4M' || TO_CHAR(SYSDATE, 'YYMMDD') || LPAD(NVL(SUBSTR(MAX(REG_NO),8, 2) + 1, 1), 1, '0')

8번째 자리부터 두자리 채번 해준다 아닌가요?ㅜ

 

by 마농 [2023.12.19 17:47:12]

9번째 자리부터 두자리 입니다.
그리고 LAPD 인자는 2 여야죠.


by 또 [2023.12.19 18:17:07]

질문 하나만 더하겠습니다 ㅜㅜ

오늘날짜는 받아오는데 다음날짜별로 증가시키려면 어떻게해야할까요 


by 마농 [2023.12.20 09:07:20]

sysdate + 1


by 또 [2023.12.20 09:54:00]

날짜 증가가 현재날짜 기준으로 매일마다 새로 채번을 하게 하려면 

'4M' || TO_CHAR(SYSDATE, 'YYMMDD') || (LPAD(NVL(SUBSTR(MAX(V_REG_NO),9, 2) + 1, 1), 2, '0')

LPAD 앞에 날짜 조건을 붙일수 있나요? ㅜㅜ 어렵네요

 


by 또 [2023.12.19 18:05:21]

감사합니다 제가 잘못 이해 하고 있었습니다 !

 SELECT '4M' || TO_CHAR(SYSDATE, 'YYMMDD') || LPAD(NVL(SUBSTR(MAX(REG_NO),9, 2) + 1, 1), 2, '0')

이렇게 하니 바로 해결되었습니다 !!


by 마농 [2023.12.20 10:09:39]

- 오늘 : sysdate
- 내일 : sysdate + 1
- 모레 : sysdate + 2
- 어제 : sysdate - 1

1
2
3
4
5
6
-- 오늘 기준 채번 --
SELECT '4M' || TO_CHAR(sysdate, 'yymmdd')
       || LPAD(NVL(SUBSTR(MAX(reg_no), 9, 2) + 1, 1), 2, '0')
  FROM t
 WHERE reg_no LIKE '4M' || TO_CHAR(sysdate, 'yymmdd') || '%'
;

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입