SELECT
cscart_products_categories.product_id,
GROUP_CONCAT(
IF(
cscart_products_categories.link_type = "M",
CONCAT(
cscart_products_categories.category_id,
"M"
),
cscart_products_categories.category_id
)
) AS category_ids,
product_position_source.position AS position
FROM
cscart_products_categories
INNER JOIN cscart_categories ON cscart_categories.category_id = cscart_products_categories.category_id
AND cscart_categories.storefront_id IN (0, 1)
AND (
cscart_categories.usergroup_ids = ''
OR FIND_IN_SET(
0, cscart_categories.usergroup_ids
)
OR FIND_IN_SET(
1, cscart_categories.usergroup_ids
)
)
AND cscart_categories.status IN ('A', 'H')
LEFT JOIN cscart_products_categories AS product_position_source ON cscart_products_categories.product_id = product_position_source.product_id
AND product_position_source.category_id = 22
WHERE
cscart_products_categories.product_id IN (
46924, 46923, 46922, 46873, 46872, 46871,
46870, 46869, 46868, 46867, 46866,
46865, 46864, 46863, 46862, 46861,
46860, 46859, 46858, 46857, 46624,
46568, 46567, 46565, 46822, 46821,
46820, 46819, 46901, 46900, 46899,
46898, 46897, 46896, 46895, 46894,
46893, 46892, 46891, 46890, 46889,
46888, 46887, 46886, 46885, 46884,
46883, 46882, 46881, 46880, 46879,
46878, 46877, 46621, 46620, 46619,
46618, 46617, 46616, 46615, 46614,
46613, 46535, 46534, 46533, 46532,
46519, 46477, 46472, 46471, 46437,
46702, 46701, 46700, 46699, 46348,
46329, 46580, 46579, 46358
)
GROUP BY
cscart_products_categories.product_id