В PostgreSQL для вставки аргумента функции между строкой "$$" используется специальная синтаксическая конструкция, называемая dollar-quoting.
Dollar-quoting позволяет вам указать свой собственный разделитель строк, что особенно полезно, когда вы хотите использовать символ "$" внутри строки без необходимости экранирования.
Синтаксис dollar-quoting выглядит следующим образом:
$$ ваш текст $$
Два символа "$" являются началом и концом строки, а вместо "ваш текст" вы можете вставить любой текст, включая аргументы функции.
Допустим, у вас есть функция, принимающая строковый аргумент "name", и вы хотите использовать эту функцию с аргументом "John". Здесь пример функции:
CREATE FUNCTION your_function(name text)
RETURNS text AS $$
BEGIN
RETURN 'Hello, ' || name || '!';
END;
$$ LANGUAGE plpgsql;
Чтобы вызвать эту функцию, используя аргумент "John", вы можете воспользоваться следующим синтаксисом:
SELECT your_function($$John$$);
Dва символа "$" обозначают начало и конец строки для dollar-quoting, и аргумент "John" помещается между ними.
Использование dollar-quoting позволяет избежать необходимости экранирования символа "$" в аргументе функции.