如何简化此更新说明?每当客户购买一件商品时,它都会用 1 更新销售额。
$this->db->query('SELECT amount FROM shop_items WHERE itemid='.$itemid.'');
$new_amount = $item->amount+1;
if(!$this->db->query('UPDATE shop_items SET amount='.$new_amount.' WHERE itemid='.$itemid.'')):
return false;
endif;
我能不能让它更简单一些,这样行就更少了,例如:
if(!$this->db->query('UPDATE shop_items SET amount=_current_value_+1 WHERE itemid='.$itemid.'')):
return false;
endif;
这可能吗?如果没有,还是谢谢
最佳答案
如何使用以下 SQL 查询:
update shop_items
set amount = amount + 1
where itemid = 123
基本上,在一个 SQL 查询中,您将 amount
设置为其先前的值加一。
不需要两次查询;-)
将其集成到您的 PHP 代码中应该会得到如下所示的内容:
if (!$this->db->query('UPDATE shop_items SET amount=amount+1 WHERE itemid='.$itemid.'')) :
return false;
endif;
注意:我刚刚将您的 _current_value_
替换为您正在处理的字段的名称:amount
。
关于php - 如何简化此数据库更新查询 (php),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2704649/