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

Come aggiungere una serie di stringhe nell'ID incrementale in qualsiasi tabella?

La modifica di una colonna auto_increment esistente non sembra una buona idea:devi davvero farlo? Invece, perché non modificare semplicemente la query di selezione per restituire un ID adeguatamente formattato? In questo modo, mantieni l'integrità referenziale e sei anche libero di modificare il formato dell'ID dell'ordine in qualsiasi momento in futuro, senza dover aggiornare il tuo database.

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

Esempio di output:

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