해결됨: Oracle SQL에서 날짜 조작을 사용하여 현재 나이를 찾는 방법

마지막 업데이트 : 09/20/2023

효율적이고 정확한 날짜 조작은 대량의 데이터를 조작하는 모든 조직에서 데이터 관리, 분석 및 통찰력의 중요한 부분입니다. 자주 발생하는 많은 질문 중 하나는 Oracle SQL의 특정 날짜를 사용하여 현재 연령을 확인하는 방법입니다. Oracle SQL은 이 시나리오와 기타 여러 시나리오를 해결하는 데 도움이 될 수 있는 일련의 날짜 조작 기능을 제공합니다. 이 튜토리얼에서는 실제 적용 가능한 코드 예제를 통해 이 주제를 자세히 살펴봅니다.

Oracle SQL에서 날짜 조작을 사용하여 현재 연령을 찾는 방법

Oracle SQL에서 생년월일에서 사람의 나이를 알아내는 가장 간단한 방법은 현재 날짜에서 생년월일을 빼는 것입니다. 이 결과를 얻는 방법은 다음과 같습니다.

SELECT FLOOR(MONTHS_BETWEEN(sysdate, DATE_OF_BIRTH)/12) AS 연령 FROM TABLE_NAME

이 명령은 테이블의 각 레코드에 대한 연령을 검색합니다. sysdate 함수는 현재 날짜를 가져오는 반면 MONTHS_BETWEEN 함수는 두 날짜 간의 월 단위 차이를 생성합니다.

Oracle SQL의 명령 이해

오라클 SQL에서는 바닥() 함수는 숫자를 가장 가까운 정수로 내림하는 데 사용됩니다. 우리 문제에서는 두 날짜의 차이를 계산한 결과를 반올림합니다.

MONTHS_BETWEEN() 두 날짜 사이의 개월 수를 반환하는 Oracle SQL의 또 다른 중요한 함수입니다. 첫 번째 날짜에서 두 번째 날짜를 뺍니다.

시스템데이트 현재 날짜와 시간을 가져오기 위해 Oracle SQL에서 제공하는 함수입니다. 이 Oracle 함수로 가져온 값은 시스템 날짜 및 시간에 따라 다릅니다.

Oracle SQL 명령의 단계별 구현

아래는 앞서 언급한 SQL 명령어에 대한 자세한 설명이다.

  • 첫째, 시스템데이트 함수는 현재 날짜를 가져오는 데 사용됩니다.
  • The MONTHS_BETWEEN() 함수는 두 개의 매개변수를 취합니다. 이 특별한 경우에는 현재 날짜(sysdate를 사용하여 검색함)와 선택한 테이블의 DATE_OF_BIRTH 열입니다.
  • 결과 MONTHS_BETWEEN() 함수는 제공된 두 날짜 간의 월 차이를 나타내는 숫자입니다.
  • 그런 다음 이 결과를 12로 나누어 월을 연도로 변환하여 나이를 구합니다.
  • 마지막으로 바닥() 최종 출력을 반올림하고 소수점을 제거하여 전체 연도를 계산하는 함수입니다.

실제로는 명령의 DATE_OF_BIRTH 및 TABLE_NAME을 특정 열 및 테이블 이름으로 바꿉니다.

Oracle SQL 날짜 조작 라이브러리 및 기능

Oracle SQL은 날짜 조작을 위한 광범위한 기능 라이브러리를 제공합니다. 와는 별개로 시스템데이트 MONTHS_BETWEEN(), 기타 유용한 기능으로는 ADD_MONTHS, NEXT_DAY, LAST_DAY 및 EXTRACT가 있습니다. Oracle SQL에서 날짜 관련 데이터를 효과적으로 조작하고 활용하려면 이러한 기능을 이해하는 것이 중요합니다.

결론적으로, Oracle SQL에서 생년월일을 사용하여 현재 나이를 결정하는 것은 몇 가지 주요 기능을 사용하는 간단한 프로세스입니다. 여기에는 현재 날짜를 가져오는 sysdate 함수, 두 날짜 간의 월 차이를 계산하는 MONTHS_BETWEEN 함수, 전체 연도 수로 반올림하여 결과를 단순화하는 FLOOR 함수가 포함됩니다. 이러한 중요한 기능을 익히면 Oracle SQL 내에서 날짜 데이터를 효과적으로 조작할 수 있습니다.

관련 게시물: