目前,我有以下EAV表:EAV表中選擇不加入
和標準表:
id
first_name
last_name
我加入了標準表到EAV表中的每個匹配值的ID,所以我的查詢看起來像這樣:
SELECT id, first_name, last_name, fieldname1, fieldname2
FROM standard_table
LEFT JOIN EAV AS fieldname1 ON
(fieldname1.id = standard_table.id AND fieldname1.field_name = 'fieldname1')
LEFT JOIN EAV AS fieldname2 ON
(fieldname2.id = standard_table.id AND fieldname2.field_name = 'fieldname2');
這一直工作正常,直到今天,我現在我的EAV表中有62個自定義字段,這意味着我的查詢連接到62個表,因此觸及MySQL表連接限制和失敗。
整個查詢似乎是一個不好的方法,我怎麼能重寫這個,所以它更快,不需要62個表連接。
[如何轉動一個MySQL實體屬性值架構(http://stackoverflow.com/questions/649802/how-to-pivot-a-mysql-entity-attribute-value-schema) –
如果顯示你需要的輸出,那麼可以得到更好的幫助。 –