Инициализация переменной
Листинг 11.14. Инициализация переменной
CREATE FUNCTION идентификатор (аргументы) RETURNS тип AS '
DECLARE
anjnteger int4 := 10:
BEGIN
команда: С...]
END;
' LANGUAGE 'plpgsql':
Возможен н другой вариант — присваивание переменной результата запроса командой SELECT INTO. He путайте этот вариант использования команды SELECT INTO с командой SQL SELECT INTO, которая заносит результаты запроса в новую таблицу.
Примечание 2
Примечание 2
Для сохранения результатов запроса в новой таблице в PL/pgSQL используется альтернативный синтаксис SQL CREATE TABLE AS SELECT.
Команда SELECT INTO в основном требуется для сохранения данных записей в переменных, объявленных с типами UROWTYPE и RECORD. Чтобы команда SELECT INTO могла использоваться с обычной переменной, тип этой переменной должен соответствовать типу поля, упоминаемому в команде SQL SELECT. Синтаксис команды SELECT INTO:
CREATE FUNCTION идентификатор (аргументы) RETURNS тип AS '
DECLARE
команде:
BEGIN
SELECT INTO переменная [. ...] поле [, ...] секции_select;
END:
' LANGUAGE 'plpgsql':
В этом описании переменная — имя переменной, участвующей в присваивании, a ceKit,uu_select — любые поддерживаемые секции команды SQL SELECT, обычно следующие за списком целевых полей в команде SELECT.
В листинге 11.15 приведена простая функция, в которой используется команда SELECT INTO. Ключевое слово ALIAS описано в подразделе «Аргументы» этого раздела. Примеры выполнения команды SELECT INTO для переменных типа RECORD и OTWTYPE приведены в разделе «Передача управления».