sql >> Database >  >> RDS >> Mysql

db-veld (GROUP_CONCAT) als array

In database betekent array tabellen. Als u gegevens in array-indeling wilt, kunt u de waarden het beste in een aparte tijdelijke tabel opslaan.

Vind ik leuk

article_id, category_id, category_name
1           1            Cat1
2           1            Cat1
3           2            Cat2
3           1            Cat1

Of je moet een aaneenschakeling gebruiken binnen de group_concat

GROUP_CONCAT(cast(concat(c.id,\': \',c.name) AS char)SEPARATOR \', \') AS categorie_names

Het resultaat zal dus zijn als 2:Cat2,1:Cat2. U kunt deze waarde splitsen (eerst met ',' dan ':') en ID en naam ophalen.




  1. Gedeeltelijke unieke index maken met sqlalchemy op Postgres

  2. Oracle SQL maakt automatisch VARCHAR verhoogde PK

  3. Rails mysql ELF header fout

  4. mysql kan niet worden ingevoegd omdat er geen standaardwaarde is?