По сути мне нужна была рекурсивная функция, но я прочитал что функции в mysql не могут быть рекурсивными, так что сделал процедуру. Только она не работает почему-то...
create table test (id int, next_id int null default null);
insert into test values (1, 2), (2, 3), (3, null);
create procedure getLastId(in in_id int, out out_id int)
begin
set max_sp_recursion_depth = 50;
select next_id into out_id from test where id = in_id;
if not out_id is null then
call getLastId(out_id, out_id);
end if;
end;
set @out_id = null;
call getLastId(1, @out_id);
select @out_id;
Выбирается null
. А должно 3
. Почему так происходит?
Виртуальный выделенный сервер (VDS) становится отличным выбором
Всем приветКто-нибудь может подсказать, будет ли использоваться оптимизация partition pruning на реплике, если запрос прилетел в ROW формате?
Вообщем поскольку я не особо силён в сложных запросах sql нужна ваша помощьЕсть 3 таблицы выглядят так:
Подскажите как мне починить цикл? Моя программа работала в консоли, принимала значение и отправляла в бд