gpt4 book ai didi

MySQL 双列主键困境

转载 作者:行者123 更新时间:2023-11-29 07:49:58 25 4
gpt4 key购买 nike

情况如下 -> 我正在 MySQL 环境中处理两列数据(A 和 B - 均为整数)。 A 和 B 是非唯一属性,但 A 和 B 的每一行/切片都必须是唯一的。

例如,这些是有效的条目:

A      B---    ---1      11      21      3

在本例中,第三行下方无效,因为它违反了 A 和 B 的每个组合必须是唯一的规则:

A      B---    ---1      21      31      2

对于我来说,在 MySQL 设置中对这种类型的关系进行建模(其中两列的组合效果创建主键)的最佳方法是什么?我可以将这一逻辑简化为一个主键吗?在这种情况下,我如何确保每个新行不违反规则?

最佳答案

尝试唯一索引:

 ALTER TABLE `table` ADD UNIQUE INDEX (`A`, `B`);

在该查询起作用之前,您必须对表进行重复数据删除,但一旦完成,就可以保证表中具有唯一的 A+B 行。查询可以同时使用两者,但不必这样做:

 SELECT * from `table` WHERE `A`=1 and `B`=2;

关于MySQL 双列主键困境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26749290/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com