MySQL字段自增自减的SQL语句示例介绍_MySQL
bitsCN.com
MySQL的自增语句大家应该都很熟悉 也很简单
update `info` set `comments` = `comments`+1 WHERE `id` = 32
这样就可以了,但是有时候我们会涉及到做减法,
例如:文章的评论数,在删除或者锁定了一条评论之后需要对该文章总评论数减一
comments smallint(5) unsigned 文章评论总数统计字段 无符号即 0 ~ 65535 之间的数值
1. 通常情况下是可以类似上面自增的方法 把 +号 改成 -号 就行了,但问题是如果当前 comments 统计数值为 0 时 再做减法将会变成该字段类型的最大数值 65535
update `info` set `comments` = `comments`-1 WHERE `id` = 32
2. 为避免这个问题一般的想法只能是先根据 id 主键查询出文章 comments 统计字段值,再通过PHP做减法,然后再 update 一次,前后总共需要执行两次SQL命令
今天google查了下没找到这方面的资料,看了看MySQL的语法函数等等。。。试了下面的语句可以直接一条语句完成,也就是加个 if 判断,如下示例:
update `info` set `comments` = IF(`comments`
默认comments为0时, comments-1 = 65535;但测试了下 如果直接 判断 comments-1=65535 好像不行,不知道什么原因,对这个不是很熟悉不知道是不是 这里的 if 不支持 = 号,但是 comments-1 >= 65535 可以成立,于是当 comments 为 0 时,IF(`comments`-1>=65535,0,`comments`-1) 将返回 0提示:最大数值 65535 是 smallint 无符号状态下的最大值,其他字段类型请进行相应调整
----------------------------------------------------------------------------------------------------------------------
2014/02/03 补充:刚开始是这么写的,后来发现太笨了,稍微改下:
update `info` set `comments` = IF(`comments`
要减x,就判断是否小于xbitsCN.com

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

谷歌浏览器是全球最受欢迎的浏览器之一,许多用户更喜欢将其用作 Windows PC 上的默认浏览器。Chrome 提供了广泛的功能,使浏览体验愉快而轻松,因此,它仍然是最受信任的浏览器之一。但是,就像任何其他浏览器一样,即使 Chrome 也有其自身的缺点,它同样容易在您最需要的时候出现错误和故障。一个这样的错误是错误代码 3:0x80040154,这发生在检查 Google Chrome 更新时。错误消息显示为“检查更新时发生错误。更新检查无法启动(错误代码 3:0x80080005)或(错误

一、今日头条发布文章怎么才能有收益?今日头条发布文章获得更多收益方法!1.开通基础权益:原创文章选择投放广告可获得收益,视频必须要原创横屏才会有收益。2.开通百粉权益:粉丝量达到百粉以上,微头条、原创问答创作及问答均可获得收益。3.坚持原创作品:原创作品包含文章、微头条及问题等,要求300字以上。注意违规抄袭作品作为原创发布,会被扣信用分,即使有收益也会被扣除。4.垂直度:做专业领域一类的文章,不能随意跨领域写文章,会得不到合适的推荐,达不到作品的专和精,难以吸引粉丝读者。5.活跃度:活跃度高,

如果您正在使用VisualStudioCode(VSCode)并考虑如何禁用它的自动软件更新以及如何禁用其扩展的自动更新,那么请阅读本文。如果你不经常使用VSCode,隔了很长一段时间打开编辑器并想启用自动更新,本文也将指导你这样做。让我们详细讨论启用或禁用VSCode自动更新的不同方法。目录方法一:使用设置启用/禁用VSCode自动更新第一步:打开VS代码,在左下角点击齿轮状的符号。第2步:在出现的列表中单击设置。第3步:在搜索栏中输入更新并回车。查找更新:模式第4

经过多次预发布后,KDE Plasma 开发团队于 2 月 28 日推出了适用于 Linux 和 BSD 系统的 6.0 版桌面环境,首次使用 Qt6 框架。 KDE Plasma 6.1 现在附带了许多新功能

我们在使用win10系统的时候有时候会遇到电脑变得卡顿的情况,然后我们在查看后台进程的时候会发现一个Microsoftcompatibilitytelemetry的进程占用资源特别的高,那么这是怎么回事?用户们可以尝试卸载三方防护软件后尝试干净启动来进行操作,下面就让本站来为用户们来仔细的介绍一下Microsoftcompatibilitytelemetry占用高CPU的解决方法吧。Microsoftcompatibilitytelemetry占用高CPU的解决方法方法一:卸载三方防护软件后尝试

SQLUPDATE语句Update语句用于修改表中的数据。语法如下:UPDATE表名称SET列名称=新值WHERE列名称=某值"Person"表:LastNameFirstNameAddressCityGatesBillXuanwumen10BeijingWilsonChamps-Elysees更新某一行中的一个列UPDATEPersonSETFirstName="Fred"WHERELastName="Wilson"结果:LastNa

在MySQL中,可以使用 UPDATE 语句来修改、更新一个或多个表的数据。 下面本篇文章带大家探究下MySQL中 UPDATE 的使用细节,希望对大家有所帮助。

Fitbit Ace LTE 于 5 月正式推出,但目前仅在美国销售。这款智能手表专门针对儿童,他们可以通过更积极的生活方式获得游戏奖励,而父母则可以随时监控他们的情况
