🔗 Ресурсы
⚡ Кратко: 🔗 ресурсы
Пользовательская функция в MySQL создаётся командой CREATE FUNCTION и возвращает одно значение.
Функция объявляет параметры, тип результата через RETURNS, тело между BEGIN и END, а результат отдаёт через RETURN.
Для MySQL в учебных примерах используется DELIMITER //, чтобы точки с запятой внутри тела не завершали весь скрипт раньше времени.
Ключевое свойство DETERMINISTIC означает, что при одинаковых входных данных функция возвращает одинаковый результат.
Минимальный пример: SELECT square_root(25); после создания функции square_root(x DOUBLE) вернёт квадратный корень.
Топ-3 ошибки: забыть DELIMITER, не указать RETURNS, использовать функцию с текущей датой как DETERMINISTIC без проверки документации.
🔗 Ресурсы
MySQL: CREATE PROCEDURE and CREATE FUNCTION
Официальная документация для проверки синтаксиса и отличий версий.
MySQL: Functions and Operators
Официальная документация для проверки синтаксиса и отличий версий.
PostgreSQL: CREATE FUNCTION
Официальная документация для проверки синтаксиса и отличий версий.
SQLite: Application-Defined SQL Functions
Официальная документация для проверки синтаксиса и отличий версий.
Перед использованием в рабочей базе сверяйте синтаксис с документацией вашей СУБД и версии сервера.