2017-06-21 1 views
0
ALTER TABLE ticket_details PARTITION BY LIST(ticket_status_id) 
SUBPARTITION BY LIST(ticket_type_id) 
    (
    PARTITION QTR1 VALUES IN (1) 
    (
     SUBPARTITION sQTR1 VALUES IN (1), 
     SUBPARTITION sQTR2 VALUES IN (2) 
    ), 
    PARTITION QTR2 VALUES IN (2) 
    (
     SUBPARTITION s2QTR1 VALUES IN (1), 
     SUBPARTITION s2QTR2 VALUES IN (2) 
    ), 
    PARTITION QTR3 VALUES IN (3) 
    (
     SUBPARTITION s3QTR1 VALUES IN (1), 
     SUBPARTITION s3QTR2 VALUES IN (2) 
    ), 
    PARTITION QTR4 VALUES IN (4), 
    (
     SUBPARTITION s4QTR1 VALUES IN (1), 
     SUBPARTITION s4QTR2 VALUES IN (2) 
    ), 
    PARTITION QTR5 VALUES IN (15) 
    (
     SUBPARTITION s5QTR1 VALUES IN (1), 
     SUBPARTITION s5QTR2 VALUES IN (2) 
    ), 
    PARTITION QTR6 VALUES IN (NULL) 
    (
     SUBPARTITION snQTR1 VALUES IN (1), 
     SUBPARTITION snQTR2 VALUES IN (2) 
    ), 
    PARTITION QTR7 VALUES IN (0) 
    (
     SUBPARTITION s0QTR1 VALUES IN (1), 
     SUBPARTITION s0QTR2 VALUES IN (2) 
    ) 
    ); 

J'essaie d'exécuter cette requête pour créer des sous-partitions mais cela me donne cette erreur. J'ai essayé beaucoup de combinaisons mais rien ne fonctionne quand j'essaie des sous-partitions par liste. Est-il possible de le faire par la liste sous-partitionSOUS-PARTITION PAR LISTE DANS LA PARTITION LISTE DANS MARIADB

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'LIST (ticket_type_id) 
+0

Je n'ai trouvé aucune utilité pour 'SUBPARTITION', et seulement très peu d'utilisations pour' PARTITION'. Pensez à abandonner le partitionnement. –

Répondre

2

Vous ne pouvez pas SUBPARTITION BY LIST. Les types MariaDB et MySQL, SUBPARTITION sont tous deux limités à HASH et KEY.