でsql server
、次のようなテーブルがある場合:
id | name
-------------
1 | x
2 | y
3 | z
次のように、結果を 1 行で返すストアド プロシージャを作成します。
x | y | z
私のコードは:
alter PROCEDURE getSupervisorEvaluationPercentages
(
@FirstSupervisorNumber nvarchar(6),
@Year int
)
as
DECLARE @Count INT
DECLARE @OptionID INT
DECLARE @getOptionID CURSOR
declare @OptionCountTb table(c int)
SET @getOptionID = CURSOR FOR
SELECT Id FROM ObjectiveOption
OPEN @getOptionID
FETCH NEXT
FROM @getOptionID INTO @OptionID
WHILE @@FETCH_STATUS = 0
BEGIN
select @Count = (select COUNT(Id) from EvaluationProcess
where FirstSupervisorNumber = @FirstSupervisorNumber and Year = @Year and FirstSupervisorEvaluation = @OptionID)
insert into @OptionCountTb values(@Count)
FETCH NEXT
FROM @getOptionID INTO @OptionID
END
CLOSE @getOptionID
DEALLOCATE @getOptionID
@OptionCountTb
テーブルの値を1行で表示したい