Magento属性过滤器使用'like'不像预期的那样运作


Magento attribute filter using 'like' not functioning as expected

我对addAttributeToFilter()有一个问题,它不像我期望的那样工作。

$product = Mage::getModel('catalog/product');
...snip...
$simple_associated_collection = $product->getCollection()
  ->addAttributeToFilter('type_id', 'simple')
  ->addAttributeToFilter('sku',array('like'=>$configurable_product_sku.'_%'))
  ->load();

通过4_%,我期望得到

4_1
4_2

但是我也得到

42_1
420_1

目标是获得一个简单产品的集合,以便在导入后将它们与它们的可配置父产品关联。

我应该如何使用LIKE来获得与MySQL相同的结果?

Magento没有错,_是一个通配符。

我使用Nick的注释来回应sql,这是我所期望的。

固定:

->addAttributeToFilter('sku',array('like'=>$configurable_product_sku.''_%'))

示例

->addAttributeToFilter('sku',array('like'=>$configurable_product_sku.'_'.'%'))