PHP、SQL 检查值是不是大于或小于数据库值

Posted

技术标签:

【中文标题】PHP、SQL 检查值是不是大于或小于数据库值【英文标题】:PHP, SQL Check if the value is greater or less than the database valuePHP、SQL 检查值是否大于或小于数据库值 【发布时间】:2021-10-15 13:42:34 【问题描述】:

我有这个代码

$str = $conn-prepare("UPDATE users SET ss = ss + $sss WHERE user=? and $sss > ss and $sss < ss");

但它没有按预期工作。如果该值大于数据库值或如果该值小于数据库值,则不应执行任何操作,否则应将该值与当前值相加。 ss 表示数据库值,$sss 表示我们要添加的值。因此,在将 sss 值添加到 ss 之前,它会检查是否大于或小于。

【问题讨论】:

您的问题要求 OR,但您的查询指定 AND。值不能同时大于和小于,因此您的查询找不到结果。 【参考方案1】:

这应该做你想做的:

$str = $conn-prepare("UPDATE users SET ss = ss + $sss WHERE user=? AND ss <> $sss");

请注意,查询可能不安全。您应该确保$sss 是一个安全值(例如整数),否则您可能会面临 SQL 注入攻击的风险。

【讨论】:

以上是关于PHP、SQL 检查值是不是大于或小于数据库值的主要内容,如果未能解决你的问题,请参考以下文章

检查项目的尺寸是不是大于给定值

php检查数组中的特定值是不是包含大于0的值[重复]

如何检查传入号码数据是否大于或小于Firestore安全规则中的特定限制?

sql 显示V_VAL值,该值永远不会小于V_MIN或大于V_MAX。

在 PHP 中使用 if / else 检查 SQL 查询

如何检查存储过程中两个 SELECT 语句的输出是不是相等、大于或小于?