Я пытаюсь создать представление как таковое:
CREATE MATERIALIZED ReasonableSizedView
TABLESPACE MyMediumTS
AS
select COUNT(something) AS allsomethings,
thetype AS thing,
status
from SomeMassiveTable
where
thetype = 'x'
AND status IN (0,1,2,3)
GROUP BY
thetype,
status;
И все, что я получаю, это ошибка: ORA-01658
: невозможно создать начальный экстент для сегмента в табличном пространстве MySmallTS
Хорошо, теперь MySmallTS
- это значение по умолчанию ts для пользователя, которого я пытаюсь создать, - и оно заполнено. Проблема полного табличного пространства - это отдельная проблема, и она решается, но с какой стати Oracle пытается использовать ее для этого представления, хотя я явно говорю, где мне это нужно?
Более того, если я изменю запрос a и удалю group by
, он будет работать, , и создаст представление в правильном табличном пространстве .
Интересно, вся операция группировки, суммирования и прочего, не должна ли она использовать табличное пространство TEMP
, назначенное этому пользователю? Это может показаться разумным, и, кстати, у моего темпера достаточно места ...
почему это так?
спасибо