admin

在MySQL中使用列组作为唯一键

sql

我有一个名为表requests上的列idplaceIdsongIduserId

id是表的主索引。其余列仅是无符号整数,并且未定义其他唯一键。

我希望placeIdsongId对是唯一的,即,如果一行具有placeId:5和songId:12,则其他任何行都不能具有相同的组合。

我希望此检查在SQL级别进行,以便我可以像这样查询 insert into requests (...) values (...) on duplicate key do something else


阅读 206

收藏
2021-07-01

共1个答案

admin

您可以像这样在多列上创建UNIQUE索引

CREATE UNIQUE INDEX placeSong
ON requests (placeId, songId)
2021-07-01