您好我希望有人可以帮助我使用SQL,我的网站运行Magento并且有大量产品不属于任何子类别,不幸的是magento没有办法显示没有类别的产品在管理员。
我发现此查询显示的产品完全没有分类:
SELECT e.entity_id, e.sku FROM catalog_product_entity AS e LEFT JOIN catalog_category_product AS l ON l.product_id = e.entity_id WHERE l.category_id IS NULL
但有没有一种方法可以显示不属于特定子类别的产品?就像在“表格”下的类别,而不是在“木制”的子类别中。
答案 0 :(得分:0)
我认为您可以使用相同的SQL查询并进行一些修复。
SELECT e.entity_id, e.sku FROM catalog_product_entity AS e LEFT JOIN catalog_category_product AS l ON l.product_id = e.entity_id WHERE l.category_id IN(1,2) AND l.category_id NOT IN(3,4)
你也可以使用它:
$productCollection = Mage::getModel('catalog/product')
->getCollection()
->joinField(
'category_id', 'catalog/category_product', 'category_id',
'product_id = entity_id', null, 'left'
)
->addAttributeToSelect('*')
->addAttributeToFilter('category_id', array('in' => array(1,2)))
->addAttributeToFilter('category_id', array('nin' => array(3,4)))
->addAttributeToSort('created_at', 'desc');