Magento SQL在多商店中使用正确的活动类别获取产品sku

时间:2018-11-26 09:44:23

标签: sql magento magento-1.9

我正在获取产品sku,该产品在该产品的类别上显示在网站上。

输出:

+-------------+------------+
| sku         | category_n |
+-------------+------------+
|      855202 |      test1 |
|     87972_k |      test2 |
|      887997 |      test1 |
+-------------+------------+

我看过这些表:

catalog_category_product
catalog_product_entity
catalog_category_entity
catalog_category_entity_varchar

查询仅返回一个SKU就给我很多行,我得到了大约100条记录。我看不到哪一个是当前处于活动状态的正确类别。

SELECT
    * 
FROM
    "catalog_category_product" as ccp 
JOIN
    "catalog_product_entity" as cpe ON "cpe.entity_id" = "ccp.product_id"
JOIN  
    "catalog_category_entity" as cat ON "cat.entity_id" = "ccp.category_id"
JOIN 
    "catalog_category_entity_varchar" as cv on cat.entity_id = cv."entity_id"

2 个答案:

答案 0 :(得分:0)

假设您正在使用mysql数据库 尝试不要在对象名(表名和列名)周围使用引号

GeoJsonSource

答案 1 :(得分:0)

您可以尝试使用左联接

SELECT
    * 
FROM
    "catalog_category_product" as ccp 
Left JOIN
    "catalog_product_entity" as cpe ON "cpe.entity_id" = "ccp.product_id"
Left JOIN  
    "catalog_category_entity" as cat ON "cat.entity_id" = "ccp.category_id"
Left JOIN 
    "catalog_category_entity_varchar" as cv on cat.entity_id = cv."entity_id"