Why does this query ask me to declare the table when I already have?
My Issue is that the last query in this sproc is saying that I need to declare @N but I already have any ideas?
DECLARE @t TABLE (Smpinstanceid UNIQUEIDENTIFIER) INSERT INTO @t (Smpinstanceid) SELECT t.SmpInstanceid FROM Tasks t WHERE t.Completed IS NOT NULL and t.SmpInstanceID is not null DECLARE @N TABLE (SMPinstanceid UNIQUEIDENTIFIER,[Count] INT) INSERT INTO @N (SMPinstanceid,[COUNT]) SELECT Smpinstanceid,COUNT (Smpinstanceid) AS [Count] FROM @t GROUP BY Smpinstanceid UPDATE Tasks SET StepNum = @n.Count WHERE Tasks.SmpInstanceID = @n.smpinstanceid END GO
There is no reference to @n in the update query. You will need to do your update with a subquery, or with a 'from' clause (if this is sql server)
update tasks SET StepNum = (select Count from @n where Tasks.SmpInstanceID = @n.smpinstanceid )
update tasks set stepnum = n.count from tasks inner join @n as n on (Tasks.SmpInstanceID = n.smpinstanceid)