我正在尝试通过 phpMyAdmin 创建一个表,我可以在其中对两列匹配的行进行 REPLACE INTO
。
我有一个名为 channel_data
的表,它有 2 个分配的 ID。一份用于相关服务器 ( guild_id
),一份用于相关数据所有者 ( owner_id
)。
REPLACE INTO channel_data (guild_id, owner_id, username, userlimit)
VALUES ('123456789123456789', '123456789123456789', 'foo', '100');`
上面是我想要实现的示例,但如果找到具有相同 username
和 userlimit
的行,我希望它替换 guild_id
和 owner_id
的值;但如果没有 - 它会创建一个新行...
我希望这是有道理的......
提前致谢:)
最佳答案
在两列上创建唯一的多列索引。
ALTER TABLE channel_data
ADD UNIQUE INDEX (guild_id, owner_id);
关于mysql - REPLACE INTO sql 查询有 2 个键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49991447/