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