본문 바로가기
MySql

MySQL Calculate age based on date of birth

by 베이스 공부 2020. 12. 19.
반응형

SQL에 사용자 테이블이 있으며 각각 생년월일이 있습니다. 생년월일을 나이 (연도 만)로 변환하고 싶습니다. 날짜 : 15.03.1999 연령 : 14 세 및 15.03.2014 가 연령 : 15 로 변경됩니다.

여기에 사용자의 날짜를 표시하고 싶습니다.

if(isset($_GET['id']))
{
    $id = intval($_GET['id']);
    $dnn = mysql_fetch_array($dn);
    $dn = mysql_query('select username, email, skype, avatar, ' .
        'date, signup_date, gender from users where id="'.$id.'"');
    $dnn = mysql_fetch_array($dn);
    echo "{$dnn['date']}";
}

 

해결 방법

 

# object oriented
$from = new DateTime('1970-02-01');
$to   = new DateTime('today');
echo $from->diff($to)->y;

# procedural
echo date_diff(date_create('1970-02-01'), date_create('today'))->y;



SELECT TIMESTAMPDIFF(YEAR, '1970-02-01', CURDATE()) AS age



 

참조 페이지 https://stackoverflow.com/questions/19521146

 

 

반응형

댓글