我可以使用 addFieldToFilter 和 addAttributeToFilter 在 Magento 上运行 AND 和 OR 布尔条件。
但是,我很好奇实现更复杂的布尔条件,如下所示:
WHERE (`sku > 5` AND `price` > '10') OR (`name` = 'books')
对于 AND 条件,我有
$collections = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('*')
->addFieldToFilter( 'sku', array('gt' => 5 )
->addFieldToFilter('price', array('gt' => 10);
这转化为 WHERE 条件的第一个括号:
(`sku` > 5 AND `price` > 10)
我不知道如何从这里开始表达 OR 条件
`name` = 'books'
任何帮助将不胜感激。谢谢