powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Запрос из таблицы по конкретному списку секций
11 сообщений из 11, страница 1 из 1
Запрос из таблицы по конкретному списку секций
    #39445295
Edgar_Prima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток, коллеги. Столкнулся с вопросом, прошу у Вас совета.

Имеется секционированная таблица, в которой находится порядка 150млн строк с регламентным ежедневным наполнением новыми данными. Она секционирована по дате(каждый день - отдельная секция).

Для проверки на увеличение производительности выборок я хочу выполнить запросы из конкретных секций таблицы, т.е.
Я могу написать селект, использующий лишь одну секцию (Select * from tbl partition(p0)).

Каким образом написать запрос, который сможет выбирать данные из n секций? Через запятую не позволяет синтаксис оракла, а в анонимном блоке нужна динамика(в курсоре вычислить список секций и пройтись по каждой последовательно), динамику использовать нельзя.

Подскажите, пожалуйста, кто сталкивался, заранее благодарю и хорошего дня!
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445307
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edgar_PrimaКаким образом написать запрос, который сможет выбирать данные из n секций?Написать запрос с фильтрацией по диапазону.
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445309
Фотография orawish
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
для атрибута, который секционируете, задайте диапазон значений
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445314
Edgar_Prima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AmKad,

в таблице даты в формате DD/MM/YYYY hh24:mi:ss, секции строятся по маске DD.MM.YYYY, в случае фильтрации нужно использовать trunc(date_value), что автоматом в плане делает table access full, к сожалению...
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445323
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edgar_PrimaAmKad,

в таблице даты в формате DD/MM/YYYY hh24:mi:ss, секции строятся по маске DD.MM.YYYY, в случае фильтрации нужно использовать trunc(date_value), что автоматом в плане делает table access full, к сожалению...Бред.
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445331
Anatoly B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Edgar_Prima,

авторкоторый сможет выбирать данные из n секций?
Код: plsql
1.
where поле_дата >= to_date(...) and поле_дата < to_date(...)  
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445345
Edgar_Prima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Anatoly B,

А возможно это адаптировать, в случае, если приходят совершенно разные даты? Например 1 января 2016, 4 июня 2016 и 19 декабря 2017?
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445352
Lary Denis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
union all
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445354
Бракованный финский угорь
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lary Denis, тебе же написали, без динамики.
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445355
Фотография env
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edgar_PrimaА возможно это адаптировать, в случае, если приходят совершенно разные даты?

Куда они у тебя приходят? В магазин? В ресторан? В гости?
...
Рейтинг: 0 / 0
Запрос из таблицы по конкретному списку секций
    #39445373
Фотография dbms_photoshop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edgar_PrimaAnatoly B,

А возможно это адаптировать, в случае, если приходят совершенно разные даты? Например 1 января 2016, 4 июня 2016 и 19 декабря 2017?Так сложно додуматься до in (list)?

На самом деле синтаксис partition незаменим в случаях
1) когда ты указываешь секцию по имени для хеша
2) когда используется DML - по разному накладываются блокировки "partition (key)" vs "where col = key".

И да, у него есть ограничение на один элемент в списке, так что для super extremely massively concurrent нагрузки приходится изворачиваться, но это не твой случай.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Запрос из таблицы по конкретному списку секций
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]