Zend查询更新


Zend query update

我想做一个zend更新查询。

我查看了zend文档,但没有看到任何类似于我想要的示例。

问题是是否有人能帮我查询一下。

我想做下一个查询:

Update cars set active = 0 
Where id in (SELECT idCar FROM UserCars Where idUser=3)

运行任何复杂查询的最简单方法。还有一些更好的方法可以做到这一点。

$sql = "Update cars set active = 0 
Where id in (SELECT idCar FROM UserCars Where idUser=3)";
$query = $this->getDbTable()->getAdapter()->query($sql, $data);
$query->execute(); 

试试这个

$data = array { 'active' = '0' };
$where = "id in (SELECT idCar FROM UserCars Where idUser=3)";
$db->update($data, $where);

也许更Zendy的方式:

$idUser = 3;
$sub_select
  = $db->select()
       ->from('UserCars', array('id'))
       ->where('idUser = ?', $idUser);
$updated_rows 
  = $db->update('cars', 
        array('active' => 0),
        "id IN ($sub_select)" 
    );