Я немного сбит с толку относительно того, почему я получаю сообщение об ошибке «Тип операнда: несовместимость даты с int», когда я использую переменную даты вместо жестко заданной даты в условии, упомянутом для цикла WHILE.
Declare @ddate date='2013-03-25', @MembershipDate date= '2013-03-27',@id int=0
while (@ddate<=DATEADD(mm,3,@MembershipDate)-1)
begin
set @id=@id+1
end
Но если я использую жестко закодированную дату, как указано ниже, я не получу никакой ошибки
Declare @ddate date='2013-03-25',@id int=0
while (@ddate<=DATEADD(mm,3,'2013-03-27')-1)
begin
set @id=@id+1
end
Пожалуйста, дайте мне знать причину.