dateadd에 대해 잘못된 매개 변수 1이(가) 지정되었습니다....에러는?
mssql 에서 dateadd는 매우 유용한 함수다...하지만..그리 편하기만 한 함수는 아니다..
dateadd(datepart,number,datetime)..이렇게 사용한다.
여기에서 매개변수 1번이란 datepart를 말하는 것이다.
난 왜 이 에러가 났을까?..극단의 귀차니즘으로 dateadd함수에 있는 모든 매개변수를 변수로 사용하려 했기 때문이다...즉..
EX)
declare @coupon_cate char(1) ;
set @coupon_cate = m ;
declare @coupon_term integer ;
SET @coupon_term = 1
DECLARE @start datetime ;
set @start = getdate();
PRINT(dateadd(@coupon_cate,@coupon_term,@start));
저런식으로 하면 그런 에러가 나게 된다.. 물론 예시는 하나씩 값을 넣어줬지만 실용에서는 변수값들이 각자 셀렉트문으로 찾아온 값들이다.
결국 난 저 에러에 막혀서 모든 매개변수를 변수로 사용하지 못하고2,3번 매개변수만을 변수로 사용할 수 있었다. 즉..위의 예에서
PRINT(dateadd(@coupon_cate,@coupon_term,@start));
>>>>>>>>>
PRINT(dateadd(M,@coupon_term,@start));
처럼 말이다....아주 2% 족한 편리함이다..ㅠ_ㅜ;;;
dateadd함수의 매개변수를 모두다 변수로 처리할수 있는 방법을 찾고야 말겠다!!!!