Was Sie haben, ist eine Eigenschaftstabelle. Wenn Sie mehrere Eigenschaften gleichzeitig testen möchten, müssen Sie die Tabelle mit sich selbst verbinden:
SELECT c0.car_id
FROM table_cars AS c0
JOIN table_cars AS c1 ON c1.car_id=c0.car_id
JOIN table_cars AS c2 ON c2.car_id=c1.car_id
WHERE c0.name='MAKE' AND c0.value='FORD'
AND c1.name='COLOR' AND c1.value='SILVER'
AND c2.name='TOPSPEED' AND c2.value='200KM/H'
Mit dem Ersatz id
in einer Eigenschaftstabelle vorhanden ist, ist fraglich. Es scheint nichts zu tun; Jede Eigenschaft ist keine eigene Entität. Es sei denn, die id
von einem anderen Element benötigt wird, würde ich es loswerden und car_id, name
erstellen der Primärschlüssel (ein zusammengesetzter Primärschlüssel).