Поддерживается ли разбиение на основе выражений в улье? - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть таблица со столбцом, могу ли я создать раздел на основе выражения, использующего этот столбец

Я читал, что технология IBM Big SQL имеет эту функцию.

Я также знаю, что мы можем разделить улей по столбцу, но как насчет выражения?

В этом случае я выполняю приведение .. это может быть любое выражение

CREATE TABLE INVENTORY_A (
  trans_id int, 
  product varchar(50), 
  trans_ts timestamp
) 
PARTITIONED BY ( 
   cast(trans_ts as date) AS date_part
)

Я ожидаю, что записи будут разделены по значению даты. Поэтому я ожидаю, что когда пользователь пишет запрос, например

select * from INVENTORY_A where trans_ts BETWEEN timestamp '2016-06-23 14:00:00.000' AND timestamp '2016-06-23 14:59:59.000'   

запрос будет достаточно умен, чтобы разбить временную метку на дату и выполнить фильтр только по дате

1 Ответ

0 голосов
/ 09 апреля 2019

Вы можете использовать Динамическое разбиение и приводить переменные в запросе выбора.

...