Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie füge ich eine Reihe von Zeichenfolgen in inkrementierender ID in einer beliebigen Tabelle hinzu?

Das Ändern einer vorhandenen auto_increment-Spalte klingt nicht nach einer guten Idee - müssen Sie das wirklich tun? Warum ändern Sie stattdessen nicht einfach Ihre Auswahlabfrage, um eine geeignet formatierte ID zurückzugeben? Auf diese Weise bewahren Sie die referenzielle Integrität und können das Bestell-ID-Format jederzeit in der Zukunft ändern, ohne Ihre Datenbank aktualisieren zu müssen.

SELECT id, CONCAT('A2', LPAD(id, 4, '0')) AS order_id FROM <table>;

Beispielausgabe:

+------+----------+
| id   | order_id |
+------+----------+
|    1 | A20001   |
|    2 | A20002   
...
|  999 | A20999   |
| 1000 | A21000   |
| 1001 | A21001   |
+------+----------+