如何使用codeIgniter在单个查询中选择和更新列值

时间:2017-02-06 05:32:20

标签: php mysql codeigniter codeigniter-3

我的数据库包含一个表,在此表中我有一个列"获得"。此列包含一些值,我必须向此列添加一些金额(已获奖)。

现在我能够这样做..

        $this->db->select('Earned');
        $this->db->where('CustMobile', $LinkMobile);
        $query_result=$this->db->get('customers');
        $result=$query_result->row();

        $finalAmount=$result->Earned+$Commsion;

        $this->db->set('Earned', $finalAmount);
        $this->db->where('CustMobile', $LinkMobile);
        $this->db->update('customers');

我想知道如何使用单个查询更新此值?

我的数据库看起来像这样。

I want to change this circled value 1100 to 2000

我想将此圆圈值1100更改为2000

2 个答案:

答案 0 :(得分:2)

试试这个,

$this->db->query("UPDATE `customers` SET `Earned` = `Earned` + $Commsion WHERE `CustMobile` = $LinkMobile");

解释

Earned = Earned + $Commsion ==>此部分将获取字段的值并添加新值。

  

示例 - 如果$Commsion为1000且您各自的 Earned 字段为1100.因此它将更新为2100

答案 1 :(得分:1)

虽然您已接受答案,但我想为其添加活动记录查询:

$this->db->set('Earned', 'Earned +'. $Commsion .'',false);
$this->db->where('CustMobile', $LinkMobile);
$this->db->update('customers');