반응형
Oracle에서 날짜에 선행 0을 추가하려면 어떻게 해야 합니까?
숫자가 두 자리 미만이면 선행 0을 추가하고 두 숫자를 공백 없이 하나로 결합해야 합니다.
내 시도:
select ( extract (year from t.Dt)
|| to_char(extract (month from t.Dt),'09')
|| to_char(extract (day from t.Dt),'09') ) as dayid
from ATM_FACTS t;
결과:

그래서, 제 문제는 어떻게 하면 월별과 월별 사이의 공간을 제거할 수 있을까 하는 것입니다.사용한
select ( extract (year from t.Dt)
|| to_number(to_char(extract (month from t.Dt),'09'))
|| to_number(to_char(extract (day from t.Dt),'09')) ) as dayid
from ATM_FACTS t;
하지만 선두의 0은 사라집니다.
선행 0을 추가하려는 것처럼 보이지 않고, 원하는 방식으로 날짜를 문자로 변환하지 않는 것처럼 보입니다.TO_CHAR()의 datetime 형식 모델은 매우 강력하므로 최대한 활용하십시오.
select to_char(dt, 'yyyymmdd') as dayid
from atm_facts
실제로 질문에 답하려면 TO_CHAR()이 있는 숫자 형식 모델을 사용하여 선행 항목으로 패딩할 수 있습니다.
예를 들어, 다음과 같은 반환이 있습니다.006
select to_char(6, 'fm009') from dual;
모델 한정자 형식을 사용할 수 있습니다.fm필요한 경우 선행 공백을 제거하기 위해 위의 문서에 언급되어 있습니다.
T.D.가 데이트야?하나의 단일 형식으로 포맷할 수 있습니다.to_char문:
to_char(t.Dt, 'YYYYMMDD')
언급URL : https://stackoverflow.com/questions/16585608/how-can-i-add-leading-zeros-to-dates-in-oracle
반응형
'programing' 카테고리의 다른 글
| 명명된 매개 변수 JdbcTemplate 대 JdbcTemplate (0) | 2023.08.11 |
|---|---|
| T-SQL에서 디버그 시간에 테이블 변수의 값을 보는 방법은 무엇입니까? (0) | 2023.08.11 |
| org.springframework.mail.javamail을 자동으로 배선할 수 없습니다.JavaMailSender (0) | 2023.08.11 |
| ARG 또는 ENV, 이 경우 어떤 것을 사용해야 합니까? (0) | 2023.08.11 |
| Alamofire와 함께 본문에 단순 문자열이 포함된 POST 요청 (0) | 2023.08.11 |