sql >> Database >  >> RDS >> Mysql

Hoe genereer je een dynamische sequentietabel in MySQL?

De MyISAM-engine doet het voor u -

Tabeldefinitie:

CREATE TABLE `sequence` (
  `label` char(30) CHARACTER SET latin1 NOT NULL,
  `id` mediumint(9) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`label`,`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

Tabel invullen:

INSERT INTO sequence VALUES ('a', NULL); -- add some 'a' labels
INSERT INTO sequence VALUES ('a', NULL);
INSERT INTO sequence VALUES ('a', NULL);

INSERT INTO sequence VALUES ('b', NULL); -- add another labels 'b'
INSERT INTO sequence VALUES ('b', NULL);

INSERT INTO sequence VALUES ('a', NULL); -- add some 'a' labels
INSERT INTO sequence VALUES ('a', NULL);

Toon resultaat:

SELECT * FROM sequence;
+-------+----+
| label | id |
+-------+----+
| a     |  1 |
| a     |  2 |
| a     |  3 |
| a     |  4 |
| a     |  5 |
| a     |  6 |
| b     |  1 |
| b     |  2 |
+-------+----+



  1. Kopieer een DataTable in bulk naar MySQL (vergelijkbaar met System.Data.SqlClient.SqlBulkCopy)

  2. FIND_IN_SET() versus IN()

  3. Rollen en statussen in een systeem beheren

  4. PHP MySQL-paginering met willekeurige volgorde