T-SQL | Пример разработки функции типа Inline table-valued function |
Например, есть таблица с клиентами и заказами. Нужно отобрать клиентов, заказы которых приходятся на заданные даты.
➢Подготовлен синтаксис функции как Inline table-valued function:
/* Запрос 'заказы клиентов за период' @Date1 – начало периода @Date2 – окончание периода */ CREATE FUNCTION ClientOrders (@Date1 datetime, @Date2 datetime) RETURNS TABLE AS RETURN (
)
➢Разработан SELECT statement. Параметры отбора данных заменены на входящие параметры функции (@Date1, @Date2):
/* Запрос 'заказы клиентов за период' @Date1 – начало периода @Date2 – окончание периода */ CREATE FUNCTION ClientOrders (@Date1 datetime, @Date2 datetime) RETURNS TABLE AS RETURN ( SELECT Customers.CustomerID, Customers.CompanyName, Customers.City, Customers.Country, Orders.OrderDate FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID WHERE (Orders.OrderDate BETWEEN @Date1 AND @Date2) )
|