당신에게로 떠나는 꿈속여행 - 꿈속나라(http://www.inyourdream.net) 입국하기 | 영주권 신청
  • 몸부림 골라골라
  • 소근소근
  • 도란도란
  • 낙서마당
  • 착각한아이
  • 숫자맞추기
  • 소원빌기
  • 흔적남기기
  • 꿈속여행
  • 친구집 놀러가기
  • 모두드림님의 홈
  • 在祐님의 홈
  • 현우님의 홈
  • 별아해님의 홈
  • 햇살님의 홈
  • 이나니님의 홈
  • 유리알님의 홈
  • 냠냠이님의 홈
  • 꼭지님의 홈
  • 대성님의 홈
  • 在祐 / 2024-02-26 / 오후 1:57:46 / 165.246.204.254
    조회수 : 16
    [기타] 나이 구하기
    SELECT PAPMI_DOB
    , FLOOR(CAST(DATEDIFF(d, PAPMI_DOB, GETDATE()) AS INTEGER)/365.2422) A
    , FLOOR(CAST(DATEDIFF(d, DATEADD(d, -1, PAPMI_DOB), GETDATE()) AS INTEGER)/365.2422) B
    , CASE
    WHEN CONVERT(CHAR(8), GETDATE(), 112) < PAPMI_DOB THEN 0
    WHEN YEAR(CONVERT(CHAR(8), GETDATE(), 112)) = YEAR(PAPMI_DOB) THEN 0
    WHEN RIGHT(CONVERT(CHAR(8), GETDATE(), 112), 4) >= RIGHT(PAPMI_DOB, 4) THEN YEAR(CONVERT(CHAR(8), GETDATE(), 112)) - YEAR(PAPMI_DOB)
    ELSE YEAR(CONVERT(CHAR(8), GETDATE(), 112)) - YEAR(PAPMI_DOB) - 1
    END AS C
    FROM T_Student_M

    나이를 구하기 위한 공식이 있는데 MS-SQL에서 해 본 결과 생년월일에 따라
    생일이 아닌 생일 다음 날이 되어야 나이가 업데이트 되는 것을 알 수 있었다.
    생각한 방법은 CASE를 이용하거나 실제 생일을 하루 앞으로 해서 계산하는 것이다.
    Byte * 200 Byte 이내로 입력하세요 이름 : 패스워드 :