php mysql increment db字段类似于项目版本

bvk5enib  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(264)

也许我的题目不对。
但我很好奇,是否内置了一个字段,每次以+1递增,格式如下:
从1.0(或1.0.0)开始
最终在某个时刻,经过多次更新后,该字段可能是:
2.7.1

yiytaume

yiytaume1#

这有点棘手,但是sql可以做到。
在您的需求中有三个递增操作。假设你的版本看起来像 Major.Minor.Patch . 每种递增操作都需要一个单独的操作。而且,每个表都需要一个表列。
检索版本:

SELECT CONCAT_WS('.', Major, Minor, Patch) FROM tbl WHERE whatever;

增加修补程序:

UPDATE tbl SET Patch = Patch + 1 WHERE whatever

增加次要版本并重置修补程序。

UPDATE tbl SET Minor = Minor + 1, Patch = 0 WHERE whatever

增加主要版本并重置次要版本和修补程序。

UPDATE tbl SET Major = Major + 1, Minor = 0, Patch = 0 WHERE whatever

pro tip在设计sql时,通常需要彻底了解正在解决的实际问题——需要问题的精确数据模型。那么,sql就很简单了。

相关问题