Mmmm... EAV. Salah satu dari banyak alasan untuk menghindari EAV (entity-attribute_value) adalah bahwa mereka lebih sulit untuk dilaporkan dan dikueri. Namun, jika atribut yang Anda inginkan diketahui sebelumnya, Anda dapat melakukan sesuatu seperti:
Select id
, Min( Case When name = 'Make' Then attribute_value End ) As Make
, Min( Case When name = 'Year' Then attribute_value End ) As Year
, Min( Case When name = 'Type' Then attribute_value End ) As Type
, Min( Case When name = 'Axles' Then attribute_value End ) As Axles
, Min( Case When name = 'Size' Then attribute_value End ) As Size
, Min( Case When name = 'Frame' Then attribute_value End ) As Frame
, ...
From attributes
Where name In('Make','Year','Type','Axles','Size','Frame',....)
Group By id
Sekarang, MySQL, memang memiliki GROUP_CONCAT yang memungkinkan Anda menggabungkan beberapa nilai untuk atribut yang sama ke dalam daftar jika Anda mengizinkannya (mis. jika suatu entitas dapat memiliki beberapa atribut Make).