increment在表中添加2而不是1

aurhwmvo  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(284)

我有一个新闻详细信息页面,当我浏览该页面时,我会将“视图”字段更新1。查询如下:

$conn->query("update TABLE set views=views+1 where ID='$id'");

它将以db为单位的值增加2。我无法理解这种行为。
任何帮助都将不胜感激。
提前谢谢。

anhgbhbe

anhgbhbe1#

希望您可以在web页面中使用php进行web开发。
$con是数据库连接对象。通过它可以运行查询。
$con->query是一个php函数,它将运行传递给它的查询。它的工作原理与运行查询时mysql终端的工作原理类似。
当您运行以下命令时

update TABLE set views=views+1 where ID='$id'

它将检查数据库表行中的id是否等于$id(例如,如果$id=2,则检查id=2),并将该行的views列更新1。
确保检查视图列是否可以为空,以便使用以下命令更新查询

update TABLE set views=COALESCE(views, 0)+1 where ID='$id'

coalesce是mysql的内置命令,它检查视图是否为null,然后得到0,然后用计数1更新。

相关问题