php - 更新当前值大于旧值 codeigniter 的 mysql 数据库

标签 php mysql codeigniter

我们有一个表“products”,其中包含两列名称代码和价格,我用 where code = "something"condition 更新了这个表,

$sql = "UPDATE products SET price='20' WHERE code=2";

并轻松更新价格。但我们希望我们的查询检查,如果我们上传的数据低于旧数据,那么我们的值(value)将不会更新,如果我们上传的数据大于价格的旧值,那么价格更新。,意味着我们希望价格始终是最大的??什么是方式...

最佳答案

您可以在过滤器中指定条件:

UPDATE products SET price = 20 WHERE code = 2 AND price < 20

否则,您可以使用 MySQL 的 GREATEST()功能:

UPDATE products SET price = GREATEST(price, 20) WHERE code = 2    

关于php - 更新当前值大于旧值 codeigniter 的 mysql 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32509444/

相关文章:

php - 在 Windows 中为 MySQL 配置 ODBC

php - 如何从当前日期减去前一个日期(没有编号)。 php 中的天数

javascript - 如何使用 Jquery 显示和隐藏复选框文本

php - mysql 和 php 中的 AES 加密

php - 将表从一个数据库复制到另一个数据库但使用不同的用户,joomla 中的 php

mysql - 寻找共同好友列表

php - 如何水平显示表格数据

php - 连接五个表时如何避免重复

php - 无法正确选择数据

php - IN 子句无法正常工作。