надо сделать по ним джоин, но у меня ошибка по нехватке памяти
делаю джоин втупую на все таблицы, тк условий нет
подскажите, пожалуйста, может ли мне помочь идея сделать на одну (мб 2) таблицы фильтр типа sipHash64() % 2 = 0 и джоинить уже подзапрос?
или лучше попробовать какие-нибудь другие более эффективные лайфхаки для джоина больших таблиц?
(знаю, что кх не любит джоины, что это не очень хорошее архитектурное решение, но хотим сначала на уровне запроса выкрутиться)
>тк условий нет чта? в каком смылсе нет? типа надо перемножить все строки на все? вы в курсе что джойн можно переделать в union all + group by ?
а как union all + group by сделать, я что-то не догоняю можешь пояснить, пожалуйста?
Я джойнил по хэш. ( У меня уникальный ключ - 3 поля был). Но это не в прод. Так... Как проба пера
да у меня тоже что-то типа личной задачи, без прода
на вопросы ответить слабо? в упрощенном варианте так таблица 1 p | s ----- 1 | xxx таблица 2 p | w ----- 1 | ууу select p, max(s) s, max(w) w from ( select p, s, null as w union all select p, null as s, w ) group by p
да, надо перемножить все строки на все(
и сколько строк в маленькой таблице?
эм, вы понимаете сколько строк в результате? даже если в большой таблице 301 293 922, то в результате будет 301 293 922 * 301 293 922 = 90 778 027 434 142 084 строк. вы точно этого хотите?
Обсуждают сегодня