ZF2 Tablegateway:使用自引用数据更新数据集

时间:2014-06-30 09:57:43

标签: zend-framework2 tablegateway

我在ZF2 tablegateway中苦苦寻找一个非常简单的SQL语句。 SQL语句最终应该是:

UPDATE tbl SET sortOrder=sortOrder+1 WHERE parentId='1'

正如您所看到的,我只想将所有sortOrder值增加1,以便属于ID为1的父数据集。在SQL中很容易 - 在ZF2中很难:)

我尝试了以下操作(因为它需要一个key =>值对而无法工作):

$this->tableGateway->update(array('sortOrder' => 'sortOrder + 1'), array('parentId' => $parentId));

我也尝试了一些其他的结构,但我找不到如何解决这个问题的方法。有人暗示过我吗? :)

提前多多感谢, 迈克尔

1 个答案:

答案 0 :(得分:0)

尝试 -

$this->tableGateway->update(array('sortOrder' => new \Zend\Db\Sql\Expression('sortOrder + 1')), array('parentId' => $parentId));

它会正常工作。