Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL - Jak wyświetlić wartość wiersza jako nazwę kolumny za pomocą concat i group_concat

Powinieneś użyć obracania stołu. W MySQL nie ma polecenia PIVOT, więc możesz użyć tego zapytania -

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;

Tabele przestawne MySQL (przekształcanie wierszy w kolumny) .

Użyj funkcji GROUP_CONCAT zamiast MAX, jeśli wiele available wartości są możliwe.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak przekazać ArrayList<> jako klauzulę IN w zapytaniu SQL w MySQL?

  2. Wydrukować dane hierarchiczne w postaci nadrzędnej potomnej z nieuporządkowanej listy php?

  3. błąd składni:'ogranicznik ' nie jest tutaj prawidłowym wpisem

  4. Jak zapytanie może pomnożyć 2 komórki dla każdego wiersza MySQL?

  5. Left Outer Join nie zwraca wszystkich wierszy z mojej lewej tabeli?