MySQL强制执行日期部分的唯一性

时间:2016-06-07 20:45:25

标签: mysql

是否可以在一对X,Y列上强制MySQL中的唯一性,其中X是Date,Y是Integer。我需要唯一性来申请年(X),Y。使用UNIQUE很容易在列对上执行此操作,但我不知道如何通过提取日期的Year部分来添加约束。

1 个答案:

答案 0 :(得分:1)

如果您运行的是MySQL 5.7,则可以使用生成的表将两列连接在一起,并将生成的列定义为唯一。

CREATE TABLE unq(mydate DATE,myint INT,mydateint CHAR(30)AS(CONCAT(mydate,myint))UNIQUE);