MySQL、MariaDB实现某个字段内所有数值(例如VIP剩余日期)每天减去1

在现实中,我们都会遇到各种会员,例如、QQ超级会员、腾讯视频会员等,我们购买会员都是按天计算,然后每过去一天,会员的特权就少一天,那么如何实现这个需求呢?下面就来演示一下:

完成这个需求,需要事件的配合,以及一个字段批量更新的语句

1、开启事件功能

开启方法请看下面这篇:

待更新

2、实现字段批量加减

在实现了事件之后,我们还需要实现基本的功能才行,下面演示一下:
首先来看原内容:

 select * from tb_user;

在这里插入图片描述
此时可以看到,第二个字段的内容都是:1111,这里可以理解为这些会员的剩余时间都是:1111天,然后我们现在到了第二天,就需要把这个数值变成:1110天,语法如下:

update <数据表名称> set <字段>=<字段><更新方法> ;

由于我前期设置数值为1111的字段名称是:name,然后数据表名称:tb_user,所以我的命令如下:

update tb_user set name=name-1 ;

实现结果:

由于设置了5秒自动插入数据,所以要针对同ID数值做对比,因为有些新增的数值是没有更改的

执行之前:

修改之前
修改之后:
在这里插入图片描述
那么到这里就分别实现了自动任务与批量,然后我们再把两者集合就能实现需求了,具体请等待下一篇:

待更新

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

坐公交也用券

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值