PHP Mysql增加db字段就像一个项目版本

时间:2018-05-04 11:29:18

标签: php mysql mysqli increment versioning

也许我没有正确地提出这个问题。

但我很好奇是否内置每次以+1格式增加一个字段:

从1.0(或1.0.0)开始

最终在某个时刻,经过多次更新后,该字段可能是:

2.7.1

1 个答案:

答案 0 :(得分:1)

这有点棘手,但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

专业提示在设计SQL时,您需要彻底了解正在解决的实际问题,这通常就是这种情况 - 您需要准确的问题数据模型。然后,SQL很容易。