-2
ALTER FUNCTION [dbo].[FN.USER] (@USER_ID INT)  
RETURNS VARCHAR(300) AS  
BEGIN 

DECLARE @RESULT VARCHAR(300) = ''

Select  @RESULT =[USER_NAME] From USER
WHERE USER_ID=@USER_ID

RETURN @RESULT

Usernameコンボボックスに表示する必要があります。ただし、username_Id値も必要です。

結果にユーザー名を設定し、同時にユーザー ID 値を選択するにはどうすればよいですか?

どんな助けでも大歓迎です。

ありがとう。

4

3 に答える 3

1

これを試して

CREATE FUNCTION [FN.USERNew]
(   
    @USER_ID INT 
)
RETURNS TABLE 
AS
RETURN 
(
    -- Add the SELECT statement with parameter references here
Select  [USER_NAME] , username_Id  From USER
WHERE USER_ID=@USER_ID
)
GO

次に、次のように記述してfrom関数を選択できます

SELECT * FROM [dbo].[FN.USERNew] (1)
于 2013-10-14T13:42:15.600 に答える
0

これはストアド プロシージャではなくスカラー関数です。このように select ステートメントで使用します。

SELECT Username(somevalue), ....

ストアド プロシージャを作成する場合は、次のことを試してください。

CREATE PROCEDURE GetUser
    @USER_ID int
AS
SELECT [USER_NAME], username_Id, whatever ...
FROM USER
WHERE USER_ID = @USER_ID

または、Dhavalの回答に従ってテーブル関数を使用することもできます。

他のテーブルからのデータが必要な場合は、結合を行うだけです

  CREATE PROCEDURE GetUser
        @USER_ID int
    AS
    SELECT [USER_NAME], username_Id, whatever ...
    FROM USER u
    INNER JOIN OtherTable ot ON ot.id = u.otid
    WHERE USER_ID = @USER_ID
于 2013-10-14T13:49:36.213 に答える