programing

오라클에서 날짜로부터 월 및 연도 추출

newsource 2023. 7. 29. 08:30

오라클에서 날짜로부터 월 및 연도 추출

전체 날짜에서 추출한 월 및 연도에 대한 쿼리는 무엇입니까. 제 데이터는 다음과 같습니다. 2008년 1월 29일에 저는 이 쿼리를 시도했습니다.

select ID_NO, CHECKED_DATE, to_date(TO_CHAR(CHECKED_DATE, 'MON-YYYY'), 'MON-YYYY') AS A 
from Doctor_Checkup;

하지만 생산량은 2008년 1월 1일입니다.

예상 출력: 1-2008

필드가 이미 날짜 열인 경우 원하는 형식으로 간단히 캐스팅할 수 있습니다.

select ID_NO,CHECKED_DATE,ltrim(TO_CHAR(CHECKED_DATE,'mm-yyyy'),'0') AS A from Doctor_Checkup;

텍스트 열인 경우 먼저 형식이 지정된 날짜로 캐스트해야 합니다.

select ID_NO,CHECKED_DATE,ltrim(TO_CHAR(TO_DATE(CHECKED_DATE,'dd/mm/yyyy'),'mm-yyyy'),'0') AS A from Doctor_Checkup;

날짜는 형식이 없습니다. 데이터베이스에 내부적으로 7바이트(연, 월, 일, 시, 분 및 초)로 저장되며, 사용 중인 사용자 인터페이스(예: SQL/Plus, SQL Developer, Java 등)가 해당 날짜를 사용자에게 표시할 때까지 표시되지 않습니다.날짜가 형식을 갖는 의미 있는 것(일반적으로 문자열)으로 변환합니다.

한 가지 주의할 점은 날짜에는 항상 년, 월, 일, 시, 분 및 초 구성 요소가 있다는 것입니다.실행 중:

to_date(TO_CHAR(CHECKED_DATE, 'MON-YYYY'), 'MON-YYYY')

효과적으로 다음을 수행하는 것과 동일합니다.

TRUNC( Checked_Date, 'MM' )

그리고 일, 시, 분 및 초 구성 요소가 계속 포함되지만 해당 월의 첫 번째 날 자정으로 잘립니다.사용자 인터페이스는 시간 구성요소를 표시하지 않도록 기본 설정만 설정할 수 있습니다(그러나 날짜에는 계속 시간 구성요소가 표시됩니다).

날짜를 형식화된 문자열로 변환할 수 있습니다.

select ID_NO,
       CHECKED_DATE,
       TRIM( LEADING '0' FROM TO_CHAR( CHECKED_DATE, 'MM-YYYY') ) AS A 
from   Doctor_Checkup;

또는

select ID_NO,
       CHECKED_DATE,
       EXTRACT( MONTH FROM CHECKED_DATE )
         || '-' || EXTRACT( YEAR FROM CHECKED_DATE ) AS A 
from   Doctor_Checkup;

[M]M-YYYY 형식으로 월과 연도를 나타내는 문자열을 사용합니다.오라클의TO_CHARMM-YYYY만 지원하므로 선행 0이 있으면 제거해야 합니다.

두 가지 솔루션:

trim(leading '0' from to_char(checked_date, 'mm-yyyy'))

또는

extract(month from checked_date) || '-' || extract(year from checked_date) from dual

갖기 위해1-2008format은 트리밍 선행 0과 함께 다음 형식을 사용합니다.

select ID_NO,CHECKED_DATE,ltrim(TO_CHAR(CHECKED_DATE,'MM-YYYY'),'0') AS A from Doctor_Checkup; 

(6)의 ID_NO, CHECKED_DATE From Doctor_Checkup Extract(체크된_DATE로부터 월) 및 (2019)의 Extract(체크된_DATE로부터 년) 선택;

6은 달을 의미하며 2019년은 해입니다.

LTRIM(TO_CHAR(TO_DATE(<date_field>,'YYYYMMDD'),'YYYY-MM'),'09'))

언급URL : https://stackoverflow.com/questions/46095195/extract-month-and-year-from-date-in-oracle