ホームページ >データベース >mysql チュートリアル >SQL Server のスカラー値 UDF は単一列テーブル パラメーターを受け入れることができますか?

SQL Server のスカラー値 UDF は単一列テーブル パラメーターを受け入れることができますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-05 13:21:40788ブラウズ

Can SQL Server Scalar-Valued UDFs Accept Single-Column Table Parameters?

テーブル パラメーターを SQL Server UDF に渡す

問題:

を渡すことは可能ですかSQL Server のスケーラー値のユーザー定義関数 (UDF) へのパラメーターとしてのテーブル。テーブルには 1 つの列のみが含まれるという制限がありますか?

答え:

はい、テーブル パラメータを UDF に渡すことができます。 table はタイムスタンプ データ型ではありません。これを実現するには、ユーザー定義のテーブル タイプを利用する必要があります。

ユーザー定義のテーブル タイプと UDF の使用例:

CREATE TYPE TableType AS TABLE (LocationName VARCHAR(50))
GO

CREATE FUNCTION Example(@TableName TableType READONLY)
RETURNS VARCHAR(50)
AS
BEGIN
    DECLARE @name VARCHAR(50)
    SELECT TOP 1 @name = LocationName FROM @TableName
    RETURN @name
END
GO

DECLARE @myTable TableType
INSERT INTO @myTable(LocationName) VALUES('aaa')
SELECT * FROM @myTable

SELECT dbo.Example(@myTable)

データの処理テーブルから:

既存のテーブルからデータのテーブルをユーザー定義のテーブル型変数に渡すには、次のコードを使用できます:

DECLARE @myTable TableType
INSERT INTO @myTable(field_name)
SELECT field_name_2 FROM my_other_table

以上がSQL Server のスカラー値 UDF は単一列テーブル パラメーターを受け入れることができますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。