...azade
دوشنبه 12 دی 1390, 13:01 عصر
سلام
من یک جدول دارم که شامل فیلدهای سال و ترم و شاخصه حالا میخوام وقتی یک ترم با یک سال مشخص رو بهش دادم اگر وجود نداشت یک ترم برگرده عقب تا زمانیکه مقداری برای شاخص وجود داشته باشه ..این دستور رو نوشتم ولی مشکل داره :
WHILE((select AdjustmentSeasonFactor From TbSeasonFactor WHERE dbo.TbSeasonFactor.Id_Year =@Id_Year AND dbo.TbSeasonFactor.Id_Term = @Id_Term)isnull)
Begin
IF(@Id_Term=1)
BEGIN
SELECT AdjustmentSeasonFactor
From TbSeasonFactor
WHERE dbo.TbSeasonFactor.Id_Year =@Id_Year-1 AND dbo.TbSeasonFactor.Id_Term = 4
End
Else
Begin
SELECT AdjustmentSeasonFactor
From TbSeasonFactor
WHERE dbo.TbSeasonFactor.Id_Year =@Id_Year AND dbo.TbSeasonFactor.Id_Term = @Id_Term-1
End
End
اگر راهنمایی کنید ممنون میشم.
من یک جدول دارم که شامل فیلدهای سال و ترم و شاخصه حالا میخوام وقتی یک ترم با یک سال مشخص رو بهش دادم اگر وجود نداشت یک ترم برگرده عقب تا زمانیکه مقداری برای شاخص وجود داشته باشه ..این دستور رو نوشتم ولی مشکل داره :
WHILE((select AdjustmentSeasonFactor From TbSeasonFactor WHERE dbo.TbSeasonFactor.Id_Year =@Id_Year AND dbo.TbSeasonFactor.Id_Term = @Id_Term)isnull)
Begin
IF(@Id_Term=1)
BEGIN
SELECT AdjustmentSeasonFactor
From TbSeasonFactor
WHERE dbo.TbSeasonFactor.Id_Year =@Id_Year-1 AND dbo.TbSeasonFactor.Id_Term = 4
End
Else
Begin
SELECT AdjustmentSeasonFactor
From TbSeasonFactor
WHERE dbo.TbSeasonFactor.Id_Year =@Id_Year AND dbo.TbSeasonFactor.Id_Term = @Id_Term-1
End
End
اگر راهنمایی کنید ممنون میشم.