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

MySQL - Come visualizzare il valore della riga come nome della colonna usando concat e group_concat

Dovresti usare il pivot della tabella. Non esiste un comando PIVOT in MySQL, quindi puoi utilizzare questa query -

SELECT
  t1.id,
  MAX(IF(t2.typename = 'CL', t1.available, NULL)) AS CL,
  MAX(IF(t2.typename = 'ML', t1.available, NULL)) AS ML
FROM table1 t1
  JOIN table2 t2
    ON t1.typeid = t2.typeid
GROUP BY
  t1.id;

Tabelle pivot MySQL (trasforma le righe in colonne) .

Usa la funzione GROUP_CONCAT invece di MAX, se più available valori sono possibili.