gpt4 book ai didi

mysql - Magento : Subtraction and Division on addAttributeToFilter

转载 作者:行者123 更新时间:2023-11-29 02:31:07 26 4
gpt4 key购买 nike

我是 Magento getResourceModel 的新手,我正在尝试向我的查询添加一个简单的过滤器,但我无法使用 getResourceModel 进行计算。

原始查询:

$collection = Mage::getResourceModel('catalog/product_collection');
Mage::getModel('catalog/layer')->prepareProductCollection($collection);
$collection->addAttributeToFilter('promotion', 1)->setOrder('price', 'desc');

我只想添加 where 子句:

 (`price` - `final_price`) >= (`price` * 0.4) 

有人可以帮我做这个吗?

就这些了,谢谢!

最佳答案

所以最后我找到了正确的方法,很抱歉延迟在这里发布答案并感谢@feeela。

查看文件 /lib/Zend/Db/Select.php 我发现存在 where 函数:

public function where($cond, $value = null, $type = null)
{
$this->_parts[self::WHERE][] = $this->_where($cond, $value, $type, true);

return $this;
}

因此,我们需要的只是添加对此函数的调用以提供我们想要的条件。就我而言,我只是添加了一个条件来过滤具有 40% 折扣的产品。

$collection = Mage::getResourceModel('catalog/product_collection');
Mage::getModel('catalog/layer')->prepareProductCollection($collection);
$collection->addAttributeToFilter('promotion', 1)
->addStoreFilter();
$collection->getSelect()->where( '(`price` - `final_price`) >= (`price` * 0.4)' );

所以,我希望这对一些家伙有帮助!

谢谢大家!

关于mysql - Magento : Subtraction and Division on addAttributeToFilter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13029709/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com