184 похожих чатов

Коллеги, в целом в доке понятно написано, но все же

сие удивительно и потому уточняю - КХ таки не материализует CTE в памяти ?....

Нет никаких вариантов написать запрос, в котором как то материализовать результат CTE в памяти, и потом обращаться к нему несколько раз?

Ну кроме времянок с Engine=Memory..

Общая задача - написать сложный запрос для отчета в суперсете, который отсканирует 1 раз относительно емкую витрину, свернет ее в небольшую CTE, и потом уже из нее соберет датасет для отчета.

15 ответов

11 просмотров
Игорь-Стерхов Автор вопроса

А в чем проблема сделать материлизацию с engine=memory? Пара строчек кода. Какой тут минус?

Игорь-Стерхов Автор вопроса
William Ko
А в чем проблема сделать материлизацию с engine=me...

Ну учётка суперсета по определённым причинам имеет права только на селекты. Ну чтобы сервер аналитики не положили создавая времянки на всю память и тд, как я понимаю

Игорь Стерхов
Ну учётка суперсета по определённым причинам имеет...

аааа всё понял. вы хотите после того как чарт построен память высвободить. Ну да была бы полезная фича.

Игорь Стерхов
screenshot

Вариант есть через сбор строк в скаляр с помощью groupArray(tuple()) и использованием его

Игорь Стерхов
Ну учётка суперсета по определённым причинам имеет...

в подобных случаях обычно можно обратиться к админам/разработке за а) ревью вашего запроса б) созданием матвью наконец, можно же подзапросы использовать, запихните ваш мегатяжелый скан в первый подзапрос и алга

Игорь-Стерхов Автор вопроса
Sergey Platonov
в подобных случаях обычно можно обратиться к админ...

Если на уровне етл материализовать это ок, просто требует доп время на разработку, мержи, рефакторинг, а то и перезаливка исторических данных а замечания и предложения по доработке поступают по неск раз в день, вот и прикручиваешь в итоге на уровне отчетного запроса новые фичи/костыли Если через подзапросы то по сути полносью переписать логику придется, то есть рефакторинг. Или можно подзапросы аля как кте использовать как то ?

Игорь Стерхов
Если на уровне етл материализовать это ок, просто ...

«вот и прикручиваешь в итоге на уровне отчетного запроса новые фичи/костыли» таких бы я еще больше ограничивал )))

Игорь-Стерхов Автор вопроса
Игорь Стерхов
сами себя поди в край ограничили там?)

я в разных проектах в разных ролях. Так что есть где меня ограничивают и есть где я. Но нигде не позволяю себе запросы работающие больше 5-6с, 10 - край.

почему же ничем перенос where на уровень подзапроса до JOIN бывает дает результат

Игорь-Стерхов Автор вопроса
Sergey Platonov
«вот и прикручиваешь в итоге на уровне отчетного з...

в общем, давайте всем чатом похлопаем вам ) исходный вопрос был немного другой

Игорь-Стерхов Автор вопроса
Игорь-Стерхов Автор вопроса

еще сначала group by, потом dictget )

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
18
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Карта сайта