Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Melepasi Jadual sebagai Parameter kepada UDF Skalar SQL Server?
Melalui Jadual sebagai Parameter ke UDF SQL Server
Adalah mungkin untuk menghantar jadual sebagai parameter kepada UDF skalar dalam SQL Server, menggunakan jenis jadual yang ditentukan pengguna.
Mencipta Jadual Ditakrifkan Pengguna Taip
Tentukan jenis jadual untuk mewakili struktur parameter jadual anda. Contohnya:
CREATE TYPE TableType AS TABLE (LocationName VARCHAR(50))
Mentakrifkan UDF
Buat UDF skalar yang mengambil parameter jenis jadual yang ditentukan pengguna. Parameter mesti diisytiharkan sebagai READONLY. Contohnya:
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
Melalui Pembolehubah Jadual
Dalam SQL Server, anda boleh mencipta pembolehubah jenis jadual yang ditentukan pengguna dan mengisinya dengan data daripada sebuah meja. Contohnya:
DECLARE @myTable TableType INSERT INTO @myTable(LocationName) VALUES('aaa')
Penggunaan
Untuk menggunakan UDF dengan pembolehubah jadual, lulus pembolehubah sebagai parameter. Contohnya:
SELECT dbo.Example(@myTable)
Mengendalikan Pendua dan NULL
Untuk memastikan tiada pendua dan NULL dalam jadual anda, anda boleh memasukkan semakan yang berkaitan dalam UDF anda:
CREATE FUNCTION Example(@TableName TableType READONLY) RETURNS VARCHAR(50) AS BEGIN DECLARE @name VARCHAR(50) SELECT TOP 1 @name = LocationName FROM @TableName WHERE LocationName IS NOT NULL AND LocationName NOT IN (SELECT LocationName FROM @TableName WHERE LocationName IS NULL OR LocationName = @name) RETURN @name END
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melepasi Jadual sebagai Parameter kepada UDF Skalar SQL Server?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!