你需要找出你需要什么表和attribute_id。
运行此查询以找出:
SELECT t1.attribute_id, t1.attribute_code, t1.backend_type
FROM eav_entity_type AS t0
INNER JOIN eav_attribute AS t1
ON (t0.entity_type_id = t1.entity_type_id)
WHERE (t0.entity_model = 'catalog/product')
这会给你这样的东西:
属性 ID |属性代码 |后端类型
------------ | ------------------- | ------------
230 |品牌 | varchar
228 | cardboard_height_cm | varchar
227 |纸板宽度厘米 | varchar
108 |类别 ID |静止的
92 |颜色 |整数
79 |成本 |十进制
然后你可以像这样构建查询:
SELECT t1.entity_id, t1.attribute_id, t1.entity_type_id, t1.store_id, t1.value, t1.value_id
FROM catalog_product_entity AS t0
LEFT OUTER JOIN catalog_product_entity_varchar AS t1
ON (((t1.attribute_id = 71) AND (t1.store_id = 0)) AND (t1.entity_id = t0.entity_id))
WHERE (t0.sku IS NOT NULL)
ORDER BY t0.sku
然后你可以根据需要加入。
这是您需要的连接查询类型的示例:
SELECT t0.sku, t1.qty, t2.value, t3.value AS value1
FROM catalog_product_entity AS t0
INNER JOIN cataloginventory_stock_item AS t1
ON (t0.entity_id = t1.product_id)
INNER JOIN (
SELECT t4.entity_id, t4.value
FROM catalog_product_entity_varchar AS t4
WHERE ((t4.attribute_id = 71) AND (t4.store_id = 0))
) AS t2
ON (t0.entity_id = t2.entity_id)
INNER JOIN (
SELECT t5.entity_id, t5.value
FROM catalog_product_entity_varchar AS t5
WHERE ((t5.attribute_id = 207) AND (t5.store_id = 0))
) AS t3
ON (t0.entity_id = t3.entity_id)
WHERE ((t0.sku IS NOT NULL) AND (t1.qty <= 100))