状態コード、会計年度などに基づいてerrorcountを返すT-SQLプロシージャを作成しましたが、それには3つの部分があります。 1. it 2つのテーブルの内部結合を返して選択列を引き出します。 2.コロオフセット用に複数の値が可能なcase文 3. errorcountを返す関数。t-sqlプロシージャにエラーはありませんが、拡張する必要があります
私はコードを実行すると3つの別々のテーブルで出力しますが、私は唯一の出力としてerrorcountを取得しようとしています。どうすればこれを達成できますか?オラクルではカーソルが使用されました。私はここでそれを使う必要がありますか?
ALTER PROCEDURE [hsip].[ErrorCount] (
@cRegion CHAR(2) ='00',
@cState_Code CHAR(2) = '00',
@nFY NUMERIC(4,0) = 0,
@nREPORT_ID NUMERIC(2,0) = 0,
@nSECTION_ID NUMERIC(2,0) = 0,
@nSUBSECTION_ID NUMERIC(2,0) = 0,
@nDISPLAY_NUMBER NUMERIC(38,0) = 0,
@nQUESTION_NUMBER NUMERIC(38,0) = 0,
@nQUESTION_PART_NUMBER NUMERIC(38,0) = 0,
@suser_id varchar(25) =NULL,
@nFY_ST_QUESTION_DTL_TABLE_ID numeric(38,0))
AS
BEGIN
SET NOCOUNT ON;
--declare nfy_st_question_dtl_table_id as integer
--declare ncolumn_index cursor for
declare @coloffset as integer
[email protected] as numeric(38,0)
select qi.REGION, qi.STATE_CODE, qi.FY, qi.REPORT_ID, qi.SECTION_ID, qi.SUBSECTION_ID, qi.DISPLAY_NUMBER, qi.QUESTION_NUMBER, qd.QUESTION_PART_NUMBER
from FY_ST_QUESTION_DETAIL qd inner join FY_ST_QUESTION_INFO qi
on qd.FY_ST_QUESTION_INFO_TABLE_ID = qi.FY_ST_QUESTION_INFO_TABLE_ID
where qi.region = @cRegion
and qi.state_code = @cState_Code
and qi.fy = @nFY
and qi.report_id = @nREPORT_ID
and qi.section_id = @nSECTION_ID
and qi.subsection_id = @nSUBSECTION_ID
and qi.display_number = @nDISPLAY_NUMBER
and qi.QUESTION_NUMBER = @nQUESTION_NUMBER
and (QI.REPORTER_ID = @sUSER_ID or
QI.DELEGATE_ID = @suser_id or
QI.SUB_DELEGATE_ID = @suser_id)
and QD.QUESTION_PART_NUMBER = @nQUESTION_PART_NUMBER ;
set @coloffset=
case
when (@nREPORT_ID = 1 and @nQUESTION_NUMBER = 21) then 17
when (@nREPORT_ID = 1 and @nQUESTION_NUMBER = 32) then 16
when (@nREPORT_ID = 3 and @nQUESTION_NUMBER = 11) then 15
when (@nREPORT_ID = 3 and @nQUESTION_NUMBER = 12) then 27
end;
select [hsip].[getErrorCount](@nFY_ST_QUESTION_DTL_TABLE_ID, 0, @coloffset)as ErrCount;
END
おかげで、
このコードが3つのテーブルでどのように出力を生成するかはわかりません。 2つの選択肢しかありません。 –
第3のテーブルは関数geterrorcountから来ています。私はコード – user3147594
を掲示することができますこの場合、2番目のテーブルはどこから来ますか? –