sql >> Database teknologi >  >> RDS >> Mysql

Mysql-tabelpartition baseret på sidste ciffer i en kolonne/id

Jeg spekulerede på, om der var en mod-funktion tilladt, mens jeg oprettede en partition, jeg gjorde det ved hjælp af

CREATE TABLE ti (id INT, amount DECIMAL(7,2))
ENGINE=INNODB
PARTITION BY HASH( MOD(id,10) )
PARTITIONS 10;
 

dette skabte 10 partitioner, hver id gik i dens partition, der sluttede med det samme nummer som det sidste ciffer i id'et

Jeg tilføjede et par rækker

INSERT INTO ti VALUES (23123,343.22); INSERT INTO ti VALUES (23123,343.22); INSERT INTO ti VALUES (23144,343.22); INSERT INTO ti VALUES (23114,343.22); INSERT INTO ti VALUES (23124,343.22); INSERT INTO ti VALUES (23166,343.22); INSERT INTO ti VALUES (23116,343.22); INSERT INTO ti VALUES (23112,343.22); INSERT INTO ti VALUES (23199,343.22);

så testede det

 SELECT
  partition_name part,
  partition_expression expr,
  partition_description descr,
  table_rows
FROM
  INFORMATION_SCHEMA.partitions
WHERE
  TABLE_SCHEMA = SCHEMA()
  AND TABLE_NAME='ti';
 

OUTPUT:

part    expr    descr   table_rows
p0   MOD(id,10) \N  0
p1   MOD(id,10) \N  0
p2   MOD(id,10) \N  1
p3   MOD(id,10) \N  2
p4   MOD(id,10) \N  3
p5   MOD(id,10) \N  0
p6   MOD(id,10) \N  2
p7   MOD(id,10) \N  0
p8   MOD(id,10) \N  0
p9   MOD(id,10) \N  1
 

præcis hvad jeg ønskede, tak fordi du pegede på det rigtige link Incognito, men dit svar var forkert, måske har du misforstået det



  1. PL/SQL:hvordan beder jeg brugerinput i en procedure?

  2. Søgeordssøgning ved hjælp af PHP MySql?

  3. Hvad er den nemmeste måde at rydde en database fra CLI med manage.py i Django?

  4. Hvor er ojdbc jar-filen