sql >> Databáze >  >> RDS >> Mysql

Řádek shody Mysql EAV jako hodnota vlastnosti pole nebo entity

K tomu můžete použít několik levých spojení.

SELECT 
    o.create_date,
    o.title,
    o.author,
    op1.value AS start_date,
    op2.value AS end_date,
    ...
FROM object o
LEFT JOIN object_properties op1 ON op1.object_id=o.object_id AND op1.type_id=1
LEFT JOIN object_properties op2 ON op2.object_id=o.object_id AND op2.type_id=2

Hodnoty, které nemají vlastnosti, skončí jako null.

Při této metodě také nemusíte mít druhý dotaz, abyste získali vlastnosti.

UPRAVIT Pokud nechcete načítat hodnoty null, vynechejte left část left join .



  1. mysql FULLTEXT hledat více slov

  2. SQL DML:Nesprávná hodnota data (MySQL)

  3. MySQL pid skončil (nelze spustit mysql)

  4. Příklady TAN() v SQL Server