У меня есть таблица фактов с datestart
и enddate
и другими столбцами.Есть еще одно измерение, имеющее столбцы lowerdate
и upperdate
и другие.
У нас есть требование объединить эти две таблицы следующим образом:
select somecolumnsfromfactanddimension
from fact f
inner join dimension d
on f.startdate <= d.upperdate
and f.enddate >= d.lowerdate
fact
имеет записи по 70 КБи dimension
имеет 11K записей, но весь этот запрос возвращает около 600 миллионов записей.
Может кто-нибудь объяснить, в каком сценарии это объединение имеет смысл и как лучше всего обрабатывать такие объединения.