типов? RAW16 = CHAR35 (полученный через cast). В самом джойне не дает сделать каст (вроде, но это не точно), а вот если промежуточную делаешь cds, где указываешь каст, то падает по памяти
Ау, программисты)))
Программисты недоступны. Пожалуйста, перенапишите позднее
Тут уже все на Яву перешли.
Спасибо, но дело в том что оно начинает сначала cast обрабатывать для 10млн записей, а потом уже чикаться
русский архитектор тебе советует смотреть план запроса всегда
Там также PlanViz? Или что другое? Я просто не из ваших, по bw больше
Ну посмотрел я Вижу что сперва все вытаскивает, потом скрещивать начинает. И че делать? Других условий соединения нету. Т. К. Таблы большие - память в супер-пупер хане чота кончилась. Че делать будем?
Когда делаешь cast, то по сути получаешь новое значение поля, которое не хранится в базе данных. И чтобы сджонить по кастнутому полю, системе приходится рассчитать/материализовать значения этого поля для всех записей таблицы, и только потом по ним join делать. Этот подход будет норм работать на небольшом количестве записей - какая-нить настроечная таблица или что-то типа того. На таблице со 100500 миллионов транзакционных данных такое делать нельзя. Можешь попробовать join raw и char сделать в table function, там ограничения слабее, чем в cds, может пропустит без cast
Обсуждают сегодня