0

zend更新クエリを作成したい。

私はzendのドキュメントを見ていまし たが、私が望むような例は見当たりませんでした。

誰かが質問を手伝ってくれるかどうかという質問です。

次のクエリを実行したい:

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

2 に答える 2

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);
于 2012-08-28T15:09:55.010 に答える
3

おそらくもっと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)" 
    );
于 2012-08-28T15:29:37.353 に答える