Я пытаюсь создать таблицу и разбить ее по диапазону, затем подраздел хэшем. Но я получаю сообщение об ошибке. Я сомневаюсь, что в скрипте не так. Когда мы делаем раздел диапазона, мы можем указать другое количество подсетей для хэша, как показано ниже в моем примере (раздел OTHER_1 имеет три подраздела, а все остальные разделы имеют два).Oracle 11g Композитный раздел - Диапазон | Hash
CREATE TABLE ACCOUNTHOLDER_P (id INT, purchased DATE, OBJECT_TYPE VARCHAR2(50), PHONE_NUMBER VARCHAR2(50))
PARTITION BY RANGE (OBJECT_TYPE)
SUBPARTITION BY HASH(PHONE_NUMBER) (
PARTITION PARTNER_1 VALUES LESS THAN ('||''''||'Partner%'||''''||') TABLESPACE USERS (
SUBPARTITION sp1 TABLESPACE ABC,
SUBPARTITION sp2 TABLESPACE ABC
),
PARTITION CONSUMER_1 VALUES LESS THAN ('||''''||'User%'||''''||') TABLESPACE USERS (
SUBPARTITION sp3 TABLESPACE XYZ,
SUBPARTITION sp4 TABLESPACE XYZ
),
PARTITION OTHER_1 VALUES LESS THAN (MAXVALUE) TABLESPACE USERS (
SUBPARTITION sp5 TABLESPACE KLM,
SUBPARTITION sp6 TABLESPACE KLM,
SUBPARTITION sp7 TABLESPACE KLM
));
Ошибка:
SQL Error: ORA-00907: missing right parenthesis 00907. 00000 - "missing right parenthesis" *Cause:
*Action:
благодаря
С уважением,
Эра
Пожалуйста, объясните, почему предложения VALUES LESS THAN настолько сложны для разделов. Какие фактические значения вы пытаетесь разбить? – APC
Сложность возникает при работе с апострофом/одинарными кавычками. Здесь применяется теория ниже. SELECT 'There' || '' '' || 's Alan' == Есть Алан Спасибо. – era