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

Połączyć tabele zawierające wiersze jako kolumny połączone z inną tabelą?

SELECT i.thingid, t.name,
       MAX(IF(d.name = "enabled", i.data, NULL)) enabled,
       MAX(IF(d.name = "size", i.data, NULL)) size,
       MAX(IF(d.name = "colour", i.data, NULL)) colour
FROM info i
JOIN defs d ON i.defid = d.id
JOIN things t ON i.thingid = t.id
GROUP BY i.thingid

DEMO



  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 zdobyć wszystkie daty za miesiąc

  2. Uciekaj przed surowymi zapytaniami SQL w Laravel 4

  3. Grupuj wyniki PHP/MySQL według kolumny

  4. Błąd Mysql 1236 od mastera podczas odczytu danych z logu binarnego

  5. Jak znaleźć deltę czasu wiersza datatime w mysql?