第 2070 行有一个这样的 SQL:
SELECT product_shop.id_product, product_attribute_shop.id_product_attribute
FROM `'._DB_PREFIX_.'product` p
'.Shop::addSqlAssociation('product', 'p').'
LEFT JOIN `'._DB_PREFIX_.'product_attribute` pa ON (product_shop.id_product = pa.id_product)
'.Shop::addSqlAssociation('product_attribute', 'pa', false, 'product_attribute_shop.default_on = 1').'
WHERE product_shop.`active` = 1
'.(($ids_product) ? $ids_product : '').'
AND p.`id_product` IN (
SELECT cp.`id_product`
FROM `'._DB_PREFIX_.'category_group` cg
LEFT JOIN `'._DB_PREFIX_.'category_product` cp ON (cp.`id_category` = cg.`id_category`)
WHERE cg.`id_group` '.$sql_groups.'
)
'.($front ? ' AND product_shop.`visibility` IN ("both", "catalog")' : '').'
AND (pa.id_product_attribute IS NULL OR product_attribute_shop.default_on = 1)
GROUP BY product_shop.id_product
ORDER BY RAND()
我想知道我是否可以删除:
'.(($ids_product) ? $ids_product : '').'
因为对于 16k 产品,我有 16k“或”,它太大了,从我的服务器上占用了太多资源。
我也加了一个“LIMIT 0, 200”,不知道好不好?
谢谢