2015-10-16 5 views
1

Как написать ниже запрос mysql с использованием синтаксиса zend?Zend Update Query

UPDATE core_user_transaction as t 
JOIN core_user_transaction_therapy AS cuts ON cuts.tid=t.tid 
JOIN therapy_booking AS tb ON cuts.conf_id = tb.conf_id 
JOIN therapy_service_fees AS fees ON cuts.fee_id=fees.id 
JOIN therapy_service_taxes AS tst ON fees.service_id=tst.service_id 
JOIN core_tax AS ct ON ct.tax_id = tst.tax_id 
SET t.tax=ROUND(t.fee*(ct.tax_value/100),2), 
    t.amount = (ROUND(t.fee*(ct.tax_value/100),2)+t.fee) 
WHERE tb.datetime >= '2015-10-01 00:00:00' 
    AND t.state = 'PENDING' 
    AND t.status ='ACTIVE' 

ответ

0

Невозможно использовать метод 'update()', предоставляемый адаптером Zend Db. Вы можете выполнить запрос вручную с помощью адаптера. Что-то вроде:

// $adapter is an instance of Zend_Db_Adapter 
    $adapter->query(YOUR QUERY HERE); 
+0

он будет работать Дамма уверен –

0

Попробуйте это:

$adapter = new Zend\Db\Adapter\Adapter($driverConfig); 
$sql = "YOUR_QUERY"; 
$statement = $adapter->query($sql); 
$statement->execute(); 

Также смотрите Zend\Db\Adapter