powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Interval по неровному диапазону
7 сообщений из 7, страница 1 из 1
Interval по неровному диапазону
    #39573285
Фотография Foxter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброе утро!

Есть таблица, в которой есть поле периода, к которому относятся данные. Это поле имеет значения наподобие 201401, 201402 (т.е. год и месяц). Поле имеет числовой тип для ускорения поиска.

Можно ли сделать секционированную таблицу с динамическим добавлением секций как с датой (по месяцам) только по числу? Диапозон - то получается неровный. Если можно, то подскажите, пожалуйста, как ))
...
Рейтинг: 0 / 0
Interval по неровному диапазону
    #39573315
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
interval partitioning + check constraint для ограничения на минимальное и максимальное значения.
...
Рейтинг: 0 / 0
Interval по неровному диапазону
    #39573358
Фотография Foxter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AmKadinterval partitioning + check constraint для ограничения на минимальное и максимальное значения.

Я понимаю, что interval partitioning. Просто незнаю как указать этот интервал. Если с датами мы можем указать INTERVAL (INTERVAL '1' MONTH), то здесь интервал 201401 - 201412 - по единице - 1, а следующий шаг - 201501 - 89.
...
Рейтинг: 0 / 0
Interval по неровному диапазону
    #39573372
MazoHist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторто здесь интервал 201401 - 201412 - по единице - 1, а следующий шаг - 201501 - 89.
Ну так и задать - инкремент по единице, остальные 89 партиций созданы не будут, но окажут влияние на максимально допустимое значение ключа партиционирования.
...
Рейтинг: 0 / 0
Interval по неровному диапазону
    #39573374
Фотография AmKad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ограничение на допустимость значений рулится FK/check constraint-ами
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
column table_name          format a30
column partition_name      format a30
column high_value          format a30

drop table foxterrier purge;

Таблица удалена.


create table foxterrier
(yearnum number
)
partition by range(yearnum) interval (1)
(partition foxterrier#201801 values less than (201801)
);

Таблица создана.


insert into foxterrier(yearnum)
select 201801 + level - 1
from dual connect by level <= 12;

12 строк создано.


insert into foxterrier(yearnum)
select 201901 + level - 1
from dual connect by level <= 12;

12 строк создано.


commit;

Фиксация обновлений завершена.


select *
from foxterrier
order by yearnum;

   YEARNUM
----------
    201801
    201802
    201803
    201804
    201805
    201806
    201807
    201808
    201809
    201810
    201811
    201812
    201901
    201902
    201903
    201904
    201905
    201906
    201907
    201908
    201909
    201910
    201911
    201912

24 строк выбрано.


select table_name, partition_name, high_value, partition_position
from user_tab_partitions
where table_name = 'FOXTERRIER'
order by partition_position;

TABLE_NAME                     PARTITION_NAME                 HIGH_VALUE                     PARTITION_POSITION
------------------------------ ------------------------------ ------------------------------ ------------------
FOXTERRIER                     FOXTERRIER#201801              201801                                       1
FOXTERRIER                     SYS_P21432                     201802                                       2
FOXTERRIER                     SYS_P21433                     201803                                       3
FOXTERRIER                     SYS_P21434                     201804                                       4
FOXTERRIER                     SYS_P21435                     201805                                       5
FOXTERRIER                     SYS_P21436                     201806                                       6
FOXTERRIER                     SYS_P21437                     201807                                       7
FOXTERRIER                     SYS_P21438                     201808                                       8
FOXTERRIER                     SYS_P21439                     201809                                       9
FOXTERRIER                     SYS_P21440                     201810                                      10
FOXTERRIER                     SYS_P21441                     201811                                      11
FOXTERRIER                     SYS_P21442                     201812                                      12
FOXTERRIER                     SYS_P21443                     201813                                      13
FOXTERRIER                     SYS_P21444                     201902                                      14
FOXTERRIER                     SYS_P21445                     201903                                      15
FOXTERRIER                     SYS_P21446                     201904                                      16
FOXTERRIER                     SYS_P21447                     201905                                      17
FOXTERRIER                     SYS_P21448                     201906                                      18
FOXTERRIER                     SYS_P21449                     201907                                      19
FOXTERRIER                     SYS_P21450                     201908                                      20
FOXTERRIER                     SYS_P21451                     201909                                      21
FOXTERRIER                     SYS_P21452                     201910                                      22
FOXTERRIER                     SYS_P21453                     201911                                      23
FOXTERRIER                     SYS_P21454                     201912                                      24
FOXTERRIER                     SYS_P21455                     201913                                      25

25 строк выбрано.

...
Рейтинг: 0 / 0
Interval по неровному диапазону
    #39573403
AmKad
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
TABLE_NAME                     PARTITION_NAME                 HIGH_VALUE                     PARTITION_POSITION
------------------------------ ------------------------------ ------------------------------ ------------------
FOXTERRIER                     SYS_P21441                     201811                                      11
FOXTERRIER                     SYS_P21442                     201812                                      12
FOXTERRIER                     SYS_P21443                     201813                                      13
FOXTERRIER                     SYS_P21444                     201902                                      14
FOXTERRIER                     SYS_P21445                     201903                                      15
...
FOXTERRIER                     SYS_P21453                     201911                                      23
FOXTERRIER                     SYS_P21454                     201912                                      24
FOXTERRIER                     SYS_P21455                     201913                                      25

25 строк выбрано.

А это так и должно быть?
...
Рейтинг: 0 / 0
Interval по неровному диапазону
    #39573410
Нашел у Кайта asktom.oracle.com
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Interval по неровному диапазону
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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