Database update s vyuzitim stavajich hodnot
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- zdeno
- Člen | 13
Ahoj,
jak napisem toto:
<?php
$this->db->table('cart2product')->where($where)->update(array('quantity' => 'quantity + 1' ));
?>
skusal som aj
<?php
$this->db->table('cart2product')->where($where)->update(array('quantity' => new \Nette\Database\SqlLiteral('quantity').' + 1' ));
?>
stale je dotaz:
UPDATE cart2product
SET
quantity
=‚quantity + 1‘ WHERE
(id
= ‚16‘)
namiesto
UPDATE cart2product
SET quantity
= quantity + 1 WHERE
(id
= ‚16‘)
diky :)
Editoval zdeno (26. 9. 2016 18:50)
- Altimit
- Člen | 82
to máš jako quantity sloupec kde je to číslo tak to máš jednoduché
$numb = $this->database->table('cart2product')->where('id = ?',$id)->select('quantity');
$this->database->table('cart2product')->where('id = ?',$id)->update(array(quality => $numb + 1));
teď ale bych kecal z vody možná by to takhle mohlo fungovat zkus to :)
- David Matějka
- Moderator | 6445
Jelikoz kdyz das za ten new SqlLiteral
tecku pro spojeni
retezcu, tak se to samozrejme prevede na jeden retezec. pouzij neco
jako new SqlLiteral('quantity + 1')