「SP_SELECT」としてSPを作成しました
CREATE PROCEDURE SP_SELECT @userid varchar(50)
AS
BEGIN
SELECT Dept_Id from Master where User_Id=@userid
END
GO
ここでのタスクは、結果 (つまり) Dept_Idを、同じストアド プロシージャ自体の"dept"という名前の変数に格納する必要があることです。クエリを手伝ってください。
「SP_SELECT」としてSPを作成しました
CREATE PROCEDURE SP_SELECT @userid varchar(50)
AS
BEGIN
SELECT Dept_Id from Master where User_Id=@userid
END
GO
ここでのタスクは、結果 (つまり) Dept_Idを、同じストアド プロシージャ自体の"dept"という名前の変数に格納する必要があることです。クエリを手伝ってください。
これはあなたに役立つかもしれません
CREATE PROCEDURE USP_SELECT @userid varchar(50), @Dept int output
AS
BEGIN
SELECT @Dept = Dept_Id from Master where User_Id=@userid
END
上記のコードは次のように実行できます
Declare @Dept int;
EXEC USP_Select '123',@Dept output
Print @Dept
これを試してください
set @dept= (select Dept_Id from Master where User_Id=@userid)
この値をフロントエンドに返したい場合は、以下のコードを記述します
set @dept= (select Dept_Id from Master where User_Id=@userid)
select @dept
これのことですか?
CREATE PROCEDURE SP_SELECT @userid varchar(50)
AS
BEGIN
DECLARE @deptid int;
SET @deptid = SELECT Dept_Id from Master where User_Id=@userid
END
RETURN @deptid
GO
SQL の出力パラメーターとして @deptid を渡すこともできます。
ただし、この var は、値を保存する必要がある呼び出し元の関数またはコードでストアド プロシージャが実行されるたびにのみ存在します。
すなわち
Declare @masterdeptid int;
SET @masterdeptid = EXEC SP_Select '123';
私はSQLをテストしていませんが、あなたはアイデアを得る