집 >데이터 베이스 >MySQL 튜토리얼 >MySQL을 사용하여 생년월일로 나이를 계산하는 방법은 무엇입니까?
MySQL(InnoDB)을 사용하여 나이 계산
이 글에서는 MySQL의 TIMESTAMPDIFF
함수를 사용하여 데이터베이스에 저장된 생년월일을 기준으로 나이를 계산하는 방법을 설명합니다.
질문:
생년월일이 'dd-mm-yyyy' 형식으로 저장되어 있다고 가정하면 다음을 확인해야 합니다.
해결책:
날짜 형식:
현재 날짜에서 다른 날짜를 뺀 후 MySQL이 반환하는 날짜 형식은 기본 MySQL 날짜 및 시간 형식인 YYYY-MM-DD HH:MM:SS입니다.
연령 계산:
TIMESTAMPDIFF
함수를 사용하면 서로 다른 단위(연도 포함)로 두 날짜의 차이를 계산할 수 있습니다. 예시는 다음과 같습니다.
<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, '1970-02-01', CURDATE()) AS age;</code>
이 쿼리는 1970년 2월 1일과 현재 날짜의 차이를 계산하고 나이를 연 단위로 반환합니다.
예:
'dd-mm-yyyy' 형식의 'date_of_birth' 열이 포함된 테이블을 생각해 보세요.
<code class="language-sql">CREATE TABLE persons ( id INT PRIMARY KEY, name VARCHAR(255), date_of_birth DATE ); INSERT INTO persons (name, date_of_birth) VALUES ('John Doe', '1970-02-01'), ('Jane Doe', '1975-04-15');</code>
'John Doe'의 나이를 계산하기 위해 다음 쿼리를 실행합니다.
<code class="language-sql">SELECT TIMESTAMPDIFF(YEAR, date_of_birth, CURDATE()) AS age FROM persons WHERE name = 'John Doe';</code>
이 쿼리는 다음 결과를 반환합니다:
<code>age 51</code>
위 내용은 MySQL을 사용하여 생년월일로 나이를 계산하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!