Конечно базовый, но я вас плохо понимал в силу того что вы ничего конкретного не говорили, а предлагали играть в угадайку. К тому же вы тае и не написали, как это будет выглядить на Оракле из чего я понял, что вы сами не знаете, несмотря на то что вы сами говорите, что это "базовый метод". Но меня это не удивляет, т.к. свою квалификацию вы измеряете в количестве "серваков с десятками тыщ баз данных на них".Leberecht wrote:Подзаливаете Вы, говоря "я видел такие конструкции".
Ибо, каб видели, не писали-б "Какие-то 5-6 subquery c join на временной таблице - я это не очень понял.", ибо ентот метод если не элементарный, то один из базовых.
На "CASE WHEN" ресурсов практически не тратится, зато за счёт такого джоника, большая таблица всяк будет выбрана один разъединственный разик, с оптимизатором или без него, просто каждая запись будет размножена, вот и всё.
Я действительно написал это на синкаксисе SQL Server, ибо у меня их нонче что-т около трёх сот серваков с десятками тыщ баз данных на них, ну и соответственно парой-тройкой сотен терабайт данных.
Оракл серваков раза в два поменьше будет, Сайбэйзов и того меньше.
Так что вместо предположений "Вряд ли это будет быстрее" просто поверьте мне на слово
Вы мне напомнили одного чела, который рассказывал про то какая его жена крутая программистка. Там квалификация выражалась в количестве символов, печатаемых на клавиатуре.
Так чем вы на работе занимаетесь, backup-ом ваших терабайтов? Задача непростая, но к написанию queries имеет малое отношение. А если нет, то при чём здесь "пара-тройка сотен терабайт данных"?
Напишите, как будет выглядить на Оракле предложенный вами же "базовый метод" в виде SQL и тогда можно поверить, что вы имеете какое-то отношение к написанию queries. Несмотря на то, что "Оракл серваков раза в два поменьше", но этого всё равно должно хватить у вас для описания "базового метода".