Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment ajouter une série de chaînes en incrémentant l'id dans n'importe quelle table ?

Modifier une colonne auto_increment existante ne semble pas être une bonne idée - devez-vous vraiment le faire ? Au lieu de cela, pourquoi ne pas simplement modifier votre requête de sélection pour renvoyer un identifiant au format approprié ? Ce faisant, vous maintenez l'intégrité référentielle et vous êtes également libre de modifier le format de l'ID de commande à tout moment dans le futur, sans avoir à mettre à jour votre base de données.

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

Exemple de sortie :

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