powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как совместить в одном запросе with и with recursive
5 сообщений из 5, страница 1 из 1
Как совместить в одном запросе with и with recursive
    #39822620
Galicin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mysql 8
Подскажите, как сначала создать не рекурсивный запрос в with (в примере это t1), чтобы потом создать рекурсивный запрос ( в примере t2) с использованием ранее созданного t1?

Пример:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
with t1 as (
    select 'data' as colum
),
recursive t2 as (
    select 1 as num, t1.colum as colum
    from t1
    union all
    select t2.num+1 as num, t2.colum as colum
    from t2
    where t2.num<4)
select *
from t2
...
Рейтинг: 0 / 0
Как совместить в одном запросе with и with recursive
    #39822633
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Либо WITH, либо WITH RECURSIVE. Первое означает, что все CTE нерекурсивны, второе - что среди CTE могут (но не обязаны) быть рекурсивные.
...
Рейтинг: 0 / 0
Как совместить в одном запросе with и with recursive
    #39822642
Galicin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaЛибо WITH, либо WITH RECURSIVE. Первое означает, что все CTE не рекурсивны, второе - что среди CTE могут (но не обязаны) быть рекурсивные.
Спасибо! Перенёс RECURSIVE и всё заработало
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
with recursive t1 as (
	select 'data' as colum
),
 t2 as (
	select 1 as num, t1.colum as colum
    from t1
    union all
    select t2.num+1 as num, t2.colum as colum
    from t2
    where t2.num<4)
select *
from t2



Может кто уточнить - существенно ли увеличение затрат при WITH RECURSIVE относительно WITH с базами в несколько миллионов строк?
...
Рейтинг: 0 / 0
Как совместить в одном запросе with и with recursive
    #39822656
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Galicinсущественно ли увеличение затрат при WITH RECURSIVE относительно WITH с базами в несколько миллионов строк?Лучше бы проверить экспериментально - документация, в т.ч. и internals, ничего конкретного по этому поводу не говорят. Однако я сомневаюсь, что там будет большой оверхед - разве что по памяти...
...
Рейтинг: 0 / 0
Как совместить в одном запросе with и with recursive
    #39822658
Galicin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaGalicinсущественно ли увеличение затрат при WITH RECURSIVE относительно WITH с базами в несколько миллионов строк?Лучше бы проверить экспериментально - документация, в т.ч. и internals, ничего конкретного по этому поводу не говорят. Однако я сомневаюсь, что там будет большой оверхед - разве что по памяти...
Огромное спасибо! тема закрыта
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как совместить в одном запросе with и with recursive
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]