$query_data_one = "SELECT cpsl.parent_id AS parent_id,
cpsl.product_id AS simple_id,
GROUP_CONCAT(CASE WHEN eao.attribute_id=193 THEN eaov.value END) AS size,
GROUP_CONCAT(CASE WHEN eao.attribute_id=193 THEN cpei.value END) AS size_id,
GROUP_CONCAT(CASE WHEN eao.attribute_id=193 THEN eao.sort_order END) AS sorder,
GROUP_CONCAT(CASE WHEN eao.attribute_id=93 THEN eaov.value END) AS color,
GROUP_CONCAT(CASE WHEN eao.attribute_id=93 THEN cpei.value END) AS color_id,
cpe.sku AS sku,
stk.qty AS qty,
stk.is_in_stock AS stock_status
FROM catalog_product_super_link AS cpsl
INNER JOIN catalog_product_entity_int AS cpei ON cpsl.product_id = cpei.row_id
INNER JOIN eav_attribute_option AS eao ON eao.option_id = cpei.value
INNER JOIN eav_attribute_option_value AS eaov ON cpei.value = eaov.option_id
INNER JOIN cataloginventory_stock_item AS stk ON stk.product_id = cpei.row_id
LEFT JOIN catalog_product_entity AS cpe ON cpsl.parent_id = cpe.entity_id
WHERE eao.attribute_id IN(193,93)
AND cpsl.parent_id IN (" . implode(',', $productIds) . ")
AND cpei.attribute_id IN(193,93)
AND eaov.store_id=0
GROUP BY cpsl.product_id";
我正在使用上述查询 我正在尝试获取上述查询中使用的“catalog_product_entity”表中存在的“simple_id”的“sku”列。
他们有什么办法可以修改这个 mysql 查询以获得它吗?
答案 0 :(得分:0)
$query_data_one = "SELECT cpsl.parent_id AS parent_id,
cpsl.product_id AS simple_id,
GROUP_CONCAT(CASE WHEN eao.attribute_id=193 THEN eaov.value END) AS size,
GROUP_CONCAT(CASE WHEN eao.attribute_id=193 THEN cpei.value END) AS size_id,
GROUP_CONCAT(CASE WHEN eao.attribute_id=193 THEN eao.sort_order END) AS sorder,
GROUP_CONCAT(CASE WHEN eao.attribute_id=93 THEN eaov.value END) AS color,
GROUP_CONCAT(CASE WHEN eao.attribute_id=93 THEN cpei.value END) AS color_id,
cpe.sku AS sku,
smpl.sku AS simple_sku,
stk.qty AS qty,
stk.is_in_stock AS stock_status
FROM catalog_product_super_link AS cpsl
INNER JOIN catalog_product_entity_int AS cpei ON cpsl.product_id = cpei.row_id
INNER JOIN eav_attribute_option AS eao ON eao.option_id = cpei.value
INNER JOIN eav_attribute_option_value AS eaov ON cpei.value = eaov.option_id
INNER JOIN cataloginventory_stock_item AS stk ON stk.product_id = cpei.row_id
LEFT JOIN catalog_product_entity AS cpe ON cpsl.parent_id = cpe.entity_id
LEFT JOIN catalog_product_entity AS smpl ON cpsl.product_id = smpl.entity_id
WHERE eao.attribute_id IN(193,93)
AND cpsl.parent_id IN (" . implode(',', $productIds) . ")
AND cpei.attribute_id IN(193,93)
AND eaov.store_id=0
GROUP BY cpsl.product_id";
这行得通,我得到了“simple_sku”