我知道我可以做:
INSERT INTO MyTable (name, num, dateCreated)
VALUES ( "Joe", 31, "2016-05-01 00:00:10" )
WHERE NOT EXISTS (
SELECT num FROM MyTable WHERE num = 31 AND dateCreated = "2016-05-01 00:00:10"
)
但这非常慢,因为它在每次插入时都使用子查询。有没有更快的方法来做到这一点?
我可以在多个列上添加唯一约束吗?
我不想使用主键来测试重复
最佳答案
您可以创建唯一索引,它是两列的组合。
ALTER TABLE 学生添加唯一的 idx_row_unique(first_name,last_name,...);
关于mysql - 仅当两列中没有具有相同值的行(没有子查询)时,是否有一种有效的方法来插入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37752398/