Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Администрирование Oracle Database:
- Установка и настройка базы данных
- Обновление, применение патчей
- Оптимизация, настройка производительности
- Обучение, подготовка персонала, оптимизация
  • Страница:
  • 1

ТЕМА:

Выборка из секционированной (партиционированной) таблицы 5 года 9 мес. назад #9112

Помогите разобраться какие существуют варианты поиска по секционированной таблице. Перерыл весь инет. Полно инструкций по тому как создавать и индексировать секционированные таблицы, но ни одной вменяемой подробной инструкции как потом с ними работать. Из того, что есть понятно что можно существенно ускорить выборку, указав имя конкретной партиции (субпартиции), но на одном из форумов нашел такое (дословно):

Считаю, что правильнее задавать необходимые условия по ключу секционирования, и пусть Oracle уже сам разбирается какие нужны секции.
SELECT x,x,x FROM xxx t
WHERE my_part_key BETWEEN :1 AND :2

Вроде бы логично. Такое должно работать на таблицах секционированных по диапазону (PARTITION BY RANGE).
У меня таблица 802млн. записей патиционирована BY RANGE по полю типа TIMESTAMP. Партиции по месяцу, субпартции каждый день. В день чуть больше миллиона записей. Если отбираю с указанием конкретной субпартиции (день), то сравнительно быстро, если указываю диапазон ключа партиционирования (тот же самый день), то нереально долго. Выходит синтаксис WHERE my_part_key BETWEEN :1 AND :2 не работает?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
Время создания страницы: 0.219 секунд