2017-10-06 5 views
1

나는 날짜 열 (생년월일) 및 data_dec (사망 날짜) 인 caduti이라는 사람 데이터 테이블이 있습니다. 사망시 연령 (년)을 계산하고이 값을 eta 열로 설정해야합니다. 다음과 같은 검색어를 사용해 보았습니다.출생부터 사망까지의 나이를 계산하고 저장해야합니다.

UPDATE caduti 
SET caduti.eta =  
    DATEDIFF(YY, caduti.data_nasc, caduti.data_dec) - 
    CEILING 
    (0.5 * SIGN (
     (MONTH(caduti.data_nasc) - MONTH(caduti.data_dec)) * 50 
     + DAY(caduti.data_nasc) - DAY(caduti.data_dec) 
     ) 
    ) 

하지만 작동하지 않습니다. 나이를 계산할뿐만 아니라 테이블 열에 저장할 필요가 있습니다. 어떤 도움이 필요합니까?

답변

0

update 
caduti 
set caduti.eta = (year(data_dec) - year(data_nasc) - (date_format(data_dec, '%m%d') < date_format(data_nasc, '%m%d'))); 
+0

가 답장을 보내 주셔서 감사하십시오. 이 솔루션은 매우 간단하고 효율적이며 내 문제를 해결합니다. – Pier67