ホームページ >データベース >mysql チュートリアル >SQL Server のスカラー値 UDF は単一列テーブル パラメーターを受け入れることができますか?
テーブル パラメーターを 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 サイトの他の関連記事を参照してください。