DECLARE @StatusCodeX char(11) DECLARE @StatusCodeY char(11) DECLARE c1 CURSOR FOR SELECT CodeValue FROM tb_Decode WHERE DecodeNumber = 2 ORDER BY RecordNumber OPEN c1 FETCH NEXT FROM c1 INTO @StatusCodeX DECLARE c2 CURSOR FOR SELECT CodeValue FROM tb_Decode WHERE DecodeNumber = 2 ORDER BY RecordNumber WHILE @@FETCH_STATUS = 0 BEGIN OPEN c2 FETCH NEXT FROM c2 INTO @StatusCodeY WHILE @@FETCH_STATUS = 0 BEGIN FETCH NEXT FROM c2 INTO @StatusCodeY SELECT getStatusCountOnDate('1/1/2000', @StatusCodeX, '1/1/2000', @StatusCodeY) END CLOSE c2 FETCH NEXT FROM c1 INTO @StatusCodeX END DEALLOCATE c2 CLOSE c1 DEALLOCATE c1