Search code examples
mariadbpartitioningdatabase-partitioning

SUBPARTITION BY LIST INSIDE LIST PARTITION in mariaDB


    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)
   )
   );

I am trying to run this query to make subpartitions but it gives me this error. I have tried many combinations but nothing is working when i try subpartitions by list. Is it possible to do subpartition by list

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)

Solution

  • You cannot subpartition BY LIST. Both in MariaDB and in MySQL, SUBPARTITION types are limited to HASH and KEY.