-3

在此处输入图像描述

我需要选择 SKU,其中 partno = MEM1600-2U6D 和 brandname = Cisco 和 Condition = New

任何人都可以为此提供解决方案。

4

2 回答 2

2
$collection = Mage::getModel('目录/产品')
->getCollection()
->addAttributeToSelect('*')
->addFieldToFilter(数组(
    数组('属性'=>'partno','eq'=>'MEM1600-2U6D'),
))
->addFieldToFilter(数组(
    数组('属性'=>'品牌','eq'=>'思科'),
))
->addFieldToFilter(数组(
    数组('属性'=>'条件','eq'=>'新'),
))

我不确定。此外,您可以尝试使用 UNION 来实现您的目标。

好吧,我会尝试这样的事情:

选择 sku
FROM catalog_product_entity
在哪里
entity_id in (
     SELECT entity_id from catalog_product_entity_varchar WHERE attribute_id = (SELECT attribute_id from eav_attribute WHERE name='Partno' LIMIT 1) AND value = 'MEM1600-2U6D'
     联盟
     SELECT entity_id from catalog_product_entity_varchar WHERE attribute_id = (SELECT attribute_id from eav_attribute WHERE name='brandname' LIMIT 1) AND value = 'Cisco'
     联盟
     SELECT entity_id from catalog_product_entity_varchar WHERE attribute_id = (SELECT attribute_id from eav_attribute WHERE name='Condition' LIMIT 1) AND value = 'new'
)

那么你可能

 GROUP by entity_id HAVING COUNT(*) = 3

像这样的东西。这意味着如果我们有 3 个 entity_id 条目,这意味着它符合我们的情况。

于 2012-05-03T12:51:43.677 回答
0

条件列在哪里?

编辑:N/m,我刚看到。你不能用那个表设置来做到这一点。条件/品牌必须是单独的列或表,而不是值。在值列中使用 Condition 时,它有自己的 SKU,因此您有 2 个 SKU,一个用于产品,一个用于状态。

于 2012-05-03T12:36:19.813 回答