SQL Server 2008을 사용하고 있고 ResidencyStatus 인 내 테이블에서 계산 열을 만들었습니다. ResidencyStatus에서 datediff 사용하기 현재 날짜 (현재 날짜)와 다른 날짜 열 ResidencyDate 사이의 차이점을 알고 싶습니다. 결과는 (이하 또는 6 개월 같음)보다 작거나 183일 동일한 경우 Datediff 계산 된 열 지정 수식을 사용하여 동등한 문자열 값으로 일 계산
- 지금, 그때 ResidencyStatus에서 문자열 '과도'를 넣어합니다.
결과가 184 일 (6 개월 및 1 일 이상)이고 1825 일 이하 (4 년 및 364 일 이하) 인 경우 가치는 '이주자'가됩니다.
결과가 1826 일 (5 년 이상) 인 경우 값은 '상주'입니다.
난 계산 열이 식을 사용하여 시도 :
(case when (datediff(day,[ResidencyDate],getdate()))<=183 then 'Transient' elseif (datediff(day,[ResidencyDate],getdate())>=184 and <=1825 then 'Migrant' elseif (datediff(day,[ResidencyDate],getdate())>=1826 then 'Resident' end
하지만이 오류가 발생 "오류 칼럼 ResidencyStatus의 수식 검증." 이 공식을 만드는 방법에 대한 아이디어 나 다른 해결책을 제시해 주시겠습니까?
대신 elseif를 사용하십시오. – NP3