获取mysql上的行数据

时间:2021-04-20 11:56:06

标签: mysql

$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 查询以获得它吗?

1 个答案:

答案 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”

相关问题