【发布时间】:2021-02-17 04:10:09
【问题描述】:
是否可以使用同一表的另一列作为参考在表中创建自动增量?
我有一个包含 id、position 和 company_id 列的客户表。我需要每个同伴都有一个自动增量。
简而言之...我需要一个列来为每个公司提供多个自动增量
示例:
-------------------------------
| table client |
-------------------------------
| id | position | company |
-------------------------------
| 1 | 1 | company one |
| 2 | 2 | company one |
| 3 | 1 | company two |
| 4 | 3 | company one |
| 5 | 2 | company two |
| 6 | 4 | company one |
| 7 | 5 | company one |
| 8 | 3 | company two |
| 9 | 6 | company one |
-------------------------------
我需要列位置作为每个同伴的自动增量。有谁知道这是否可行?
【问题讨论】:
-
作为一般答案,不,SQL 没有为此提供解决方案。不过,您可以通过同步触发器来做到这一点。具体用例是什么?
-
@TheImpaler,我认为 MySQL 不支持“同步触发器”。在 MySQL 中,必须使用显式表锁来避免竞争条件。
标签: mysql sql auto-increment