[英]Two Columns, Same Data, Different Where Clauses
我需要用兩個不同的WHERE子句語句查詢同一列。
我正在與Magento合作,但無法更改表格格式。
表格檢視: catalog_product_entity_varchar
entity_id | attribute_id | value |
5 | 60 | Bear Apprentice |
5 | 86 | bear-apprentice |
5 | 71 | Item Description |
5 | 74 | /a/p/apprentice2.jpg |
我希望將其顯示為:
entity_id | Item Name | img |
5 | Bear Apprentice | /a/p/apprentice2.jpg |
最終, attribute_id 60
和74
出現在同一行中,但出現在兩個單獨的列中。 是否可以對列別名執行WHERE子句?
謝謝!
在mySQL中,一種透視的方法是使用case
和max
和group by
。 這確實假設一個entity_Id只能有一個配對值(每個實體每個值1個屬性),例如60對於實體5只能出現一次。
SELECT entity_ID
, max(case when attribute_Id = 60 then value end) as `Item Name`
, max(case when attribute_Id = 74 then value end) as img
FROM tableName
WHERE entity_ID = 5
GROUP BY entity_ID
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.