Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Tạo Hàm T-SQL với tham số bảng

Bắt đầu từ SQL Server 2008 bạn có thể sử dụng các tham số có giá trị trong bảng:

CREATE TYPE [dbo].[TableType] AS TABLE(
[ID] [INT] NULL
)
GO

CREATE FUNCTION fnTest
    (
      @t [dbo].[TABLETYPE] READONLY
    )
RETURNS INT
AS
    BEGIN

        RETURN (SELECT TOP 1 ID FROM @t ORDER BY id DESC)

    END
GO

DECLARE @t [dbo].[TABLETYPE]
INSERT  INTO @t
VALUES  ( 1 ),
        ( 2 )

SELECT  dbo.fnTest(@t) AS ID

Đầu ra:

ID
2


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cách dừng thông báo Cơ sở dữ liệu đã thay đổi thành ...

  2. Không cho phép cập nhật đặc biệt đối với danh mục hệ thống

  3. Cách đặt SET XACT_ABORT ON trong giao dịch SQL Server?

  4. Có bất kỳ công cụ miễn phí nào để tạo tập lệnh 'CHÈN VÀO' trong MS SQL Server không?

  5. Biểu diễn của DateTime tính bằng mili giây?