Документация по встроенным функциям plpgsql

Здравствуйте.

Ткните, пожалуйста, носом в хорошую документацию по существующим встроенным функциям plpgsql...
А то элементарное `присвоить значение или значение` не могу найти...
Чтобы было понятнее:
в питоне это `a = b or c`
в javascript это `a = b || c`

Что-то типа:

CREATE OR REPLACE FUNCTION getvalue(float, float)
RETURNS float AS
$BODY$
BEGIN
    IF NOT $1 IS NULL OR $1 != 0 THEN
        RETURN $1;
    END IF;
    RETURN $2;
END;
$BODY$
LANGUAGE plpgsql VOLATILE;

есть?

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

coalesce ?

coalesce ?

неа

SELECT COALESCE(0, 1);
SELECT COALESCE(NULL, 1);
SELECT COALESCE('', 'text');

не то... ланда... будем писать пользовательские...

PL/PgSQL не является в полной

PL/PgSQL не является в полной мере языком программрования. Вы не неайдёте в нём не только a= b or c; но и функций вычисления логарифмов, возведения в степень и т.д. Просто потому, что это не является задачей данного языка. Все эти функции берутся напрямую из PostgreSQL. Хотите логарифм от 2 в перменную var_name, пожалуйста:

SELECT ln(2) INTO var_name;

И это правильно! Не хватало ещё разных наборов функций, которые делают одно и тоже.

Что правильно?

Правильно то, что ln(), sin() и просто куча остальных есть, а наиболее востребованной во всех языках нет?
Чем они заслужили по Вашему?
Риторически...

Риторически... Кем

Риторически...
Кем востребовано? Пишу программы уже лет 15, и ни разу вашей конструкцией не пользовался. :)
Продукт OpenSource, напишите реализацию нужной вам функции и пришлите патчи разработчикам. Если это действительно нужно кому-то кроме вас, внедрят :)

Опции просмотра комментариев

Выберите предпочитаемый вами способ показа комментариев и нажмите "Сохранить настройки" для активации изменений.

Back to top

(С) Виктор Вислобоков, 2008-2023