【问题标题】:Find products with duplicate attribute value查找具有重复属性值的产品
【发布时间】:2014-07-31 04:44:21
【问题描述】:

我正在尝试根据任何特定属性找出具有重复值的产品。假设我有一个属性 MPN,并且必须获取共享相同 MPN 的所有产品。我设计了一个部分有效的查询,但我发现它调用的产品很少具有唯一的属性值。

select e.entity_id as ID,n.value as name,e.sku as sku,m.value as mpn from `catalog_product_entity` as e
        left join `catalog_product_entity_varchar` as m
        on e.entity_id = m.entity_id and m.attribute_id=156
        left join `catalog_product_entity_varchar` as n
        on e.entity_id = n.entity_id and n.attribute_id=71 
        group by m.value having count(*)> 1 order by e.entity_id asc

似乎我的逻辑不够公平,无法得到我想要的。

有什么数据库大师可以帮我吗?

【问题讨论】:

    标签: mysql database duplicates magento-1.8 product


    【解决方案1】:

    我已通过应用另一个查询来过滤掉结果来解决此问题。这可能不是一个好的解决方案,但它帮助了我。

    从上述查询中得到结果后,我使用了一个 foreach 循环来查找属性值是否唯一。

      foreach($QueryCollection as $data){
          $query1 = "select * from catalog_product_entity_varchar as cpev where cpev.attribute_id=156 and cpev.value='".$data['mpn']."'";
          $IsDuplicate = $_conn2->fetchAll($query1);
          if(count($IsDuplicate)>1){
              //found this as duplicate
          }
      }
    

    我的产品数量非常少,大约 200 件,所以对我来说还可以,但我想这不适合更高数量的产品。

    【讨论】:

      猜你喜欢
      • 2011-09-25
      • 1970-01-01
      • 2020-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多