mysql - 如何使用magento更新查询添加到表列中的现有值?

标签 mysql magento

尝试:

Mage::getModel('module/table')
       ->setId($obj->getId()) //"using _afterSave(Mage_Core_Model_Abstract $obj)"
       ->setCounter(+2) //"want to add to existing integer in table column"
       ->save();

启用 log-all-queries sql 语句:

SQL: UPDATE `table` SET `counter` = ? WHERE (id='2')
      BIND: array (
       0 => 1,
     ) 

尝试在每次使用 magento 模型更新时添加到表列 (int) 中的现有值 (int)。但正如 sql 语句中清楚表明的那样,没有发生。 我怎样才能实现这一目标?

非常感谢您抽出时间。

最佳答案

如果我理解正确的话,您只想将 counter 的当前值增加 1。

假设$obj->getCounter()包含当前计数器值,你可以这样做:

Mage::getModel('module/table')
    ->setId($obj->getId())
    ->setCounter($obj->getCounter() + 1) // increment counter by 1
    ->save();

关于mysql - 如何使用magento更新查询添加到表列中的现有值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17213177/

相关文章:

mysql - SQL Join,包括表 a 中的行,但表 b 中没有匹配项

mysql - RMySQL 死锁解决方法

java - 在java中解析magento json

magento - 如何在magento中调用另一个 Action ?

php - 左侧边栏出现在分组产品页面上

mysql - 让 MS SQL 2008 像 MySQL 5.0 一样生成 XML?

javascript - 如何在 javascript 中编写参数化 SQL 查询?

php - PHP 中的表 MySQL 数据

php - magento中有没有办法检测地址是否已经存在

magento ui组件多选xml