说我有一张eav
这样的表SQL Fiddle):
| Person_ID | PAttribute_ID | Value |
| 1 | 1 | Flat Street 1 |
| 1 | 2 | 634-5789 |
并且想要创建一个将所有属性作为平面表返回的查询(例如,导出到电子表格)
除了手动连接所有属性之外,还有更好的方法吗?像这样:
SELECT id , address.Value AS adressV, telephone.Value as telephoneV
FROM person
LEFT JOIN eav AS address ON address.Person_ID = person.id AND address.PAttribute_ID = 1
LEFT JOIN eav AS telephone ON telephone.Person_ID = person.id AND telephone.PAttribute_ID = 2;
有2个属性可行,有50个属性,你会得到一个不可理解的查询。