(MySQL) Как вставить запросы в функцию без оператора DELIMITER? - PullRequest
0 голосов
/ 23 февраля 2020

Вечер.

Я пытаюсь создать необработанную функцию без DELIMITER, но не могу вставить запросы под ключевым словом RETURNS.

Это мой основанная на учебнике функция:

DROP FUNCTION IF EXISTS fx_sample;
CREATE FUNCTION fx_sample(str VARCHAR(10), idx INT)
    RETURNS VARCHAR(20)
    RETURN CONCAT(str, ', ', idx) ;

SELECT fx_sample("Hi, Reddit", 2);

Попробуйте 1:

DROP FUNCTION IF EXISTS fx_raw;
CREATE FUNCTION fx_raw(str VARCHAR(20), idx INT)
    RETURNS INT
    DECLARE count;
    SET count = CONCAT(LENGTH(str), idx);
    RETURN count;

Попробуйте 2:

DROP FUNCTION IF EXISTS fx_raw2;
CREATE FUNCTION fx_raw2(str VARCHAR(20), idx INT)
    RETURNS INT
        BEGIN
            DECLARE str_length;
            SET str_length = LENGTH(str);
            RETURN str_length + idx;
        END

Вставка запросов под ключевым словом RETURNS недоступна?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...