RETURNS TABLE

RETURN

SELECT Фамилия, Имя, Отчество, Город

FROM Клиенты

WHERE LEFT(Фамилия, 1) = @Char;

 

Эта функция возвращает список авторов, чья фамилия начинается с определенной буквы.

 


Функции Multi-Statement

Синтаксис команды для создания Multi-statement - функции:

CREATE FUNCTION Имя_функции

 

(Имя параметра [ AS] тип_параметра [= значение_по_умолчанию] [, … n])

 

RETURNS @возращаемая_переменная TABLE <определение_типа,_таблицы>

[ WITH [ ENCRYPTION ] | [SCHEMABIUDING] |

[ RETURNS NULL ON NULL INPUT |

CALLED ON NULL INPUT ] ]

 

[ AS ]

BEGIN

SQL-КОДЫ

RETURN

END

 

Определение функций Multi-statementтакже практически полностью ана­логично определению функций scalar и inline, рассмотренных ранее.

 

Но есть и отличия:

1. Первое отличие связано с тем, что здесь необходимо

a.в отличие от функций inline и scalar - ука­зать имя локальной переменной типа TABLE, в которой будет возвращен результат выполнения функции;

b.определять тип возвращаемо­го значения;

c.явно определить набор столбцов, которые будут при­меняться для хранения полученных данных.

В этих функциях можно дополнительно определять индексы, ограничения целостности и т. д.

2. Второе отличие связано с завершением работы функции. Завершение ра­боты функции происходит при выполнении команды return, однако не тре­буется указание значения, которое будет возвращено как результат выполне­ния функции. Всегда возвращается содержимое переменной типа TABLE, указанной после ключевого слова returns.

Пример 4.Функция возвращает множество продавцов по заданному товару и дате

 

 

Create function example ( @abc varchar(20), @bcd date)

returns @cde table (Сотрудники varchar(20) null)

As

Begin

 

insert into @cde

 

select Фамилия from Персонал inner join Продажи on Персонал.id_сотрудника = Продажи.Продавец inner join Товары on Товары.id_товара = Продажи.Товар where Товары.Название_товара =@abc and Продажи.Дата = @bcd

 

Return

End

 









Дата добавления: 2015-08-26; просмотров: 785;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.012 сек.