sql >> Database >  >> RDS >> Mysql

Hoe voeg ik een reeks strings toe in een oplopende id in een tabel?

Het wijzigen van een bestaande auto_increment-kolom klinkt niet als een goed idee - moet u dit echt doen? Waarom zou u in plaats daarvan niet gewoon uw selectiequery wijzigen om een ​​id in de juiste opmaak te retourneren? Door dit te doen, behoudt u de referentiële integriteit en bent u ook vrij om het bestel-ID-formaat op elk moment in de toekomst te wijzigen, zonder dat u uw database hoeft bij te werken.

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

Voorbeelduitvoer:

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


  1. Foutcode:2013. Verbinding met MySQL-server verbroken tijdens zoekopdracht

  2. Rails-MySQL-fout - niet-geïnitialiseerde constante MysqlCompat::MysqlRes

  3. Kan geen verbinding maken met een van de opgegeven mysql-hosts. C# MySQL

  4. Loop op tabellen met PL/pgSQL in Postgres 9.0+