我有一个名为 muted 的 SQL 表,这些人启用了 Mute。
id name author time reason
43 "John" "Mike" 15 "Capslock"
...
46 "John" "Looney" 30 "Flood"
47 "Ray" "Mike" 45 "Capslock + Flood"
假设用户的 mut 具有共振效果,并与现有的相结合。这意味着如果约翰有 15 分钟的静音时间,而他们为其他事情再加上 30 分钟,那么他总共有 45 分钟。
问题:
如何进行查询,其中时间列的值将仅在名称为 John 的第一行中减少一个,以免减少第二,第三......以及其他给定静音中的其他列的时间? (当时间=0时,会被删除,这是一个注释)
P / S:我可以只为每个用户创建一条线,并通过添加 mut 来增加时间的价值,但我还需要发布者的历史以及再次发布 mut 的原因,结合时间和存储在这一切中,我没有找到其他选择。谢谢你。
您只需要
LIMIT 1
在请求末尾添加即可。这是一个例子:更改前:
更改后: