【发布时间】:2017-10-14 18:40:21
【问题描述】:
我不完全确定要搜索什么,所以如果这实际上是重复的,我深表歉意。
我有一张桌子(或至少想要)如下:
- 身份证
- 公司名称
- SomeOtherInfo
主键是ID 和Company name(复合主键)。我想要的是让每个公司的 ID 自动递增。
例如:
1-google
2-google
3-google
1-yahoo
4-google
2-yahoo
通过这种方式,它们始终是独一无二的,但每个公司都会单独递增。
这是否可以通过简单的 SQL 创建命令实现,宁愿没有 2 个表并使用辅助 ID 连接它们。
告诉我,谢谢。
【问题讨论】:
-
这将强烈依赖您使用的具体数据库系统。 SQL 作为查询语言没有任何此类功能 - 但也许某些供应商特定的扩展会提供类似的功能。请添加相关标签,例如
oracle、postgresql、mysql、sql-server、db2或您可能在帖子中使用的任何其他标签! -
标准 SQL 具有 IDENTITY 和 SEQUENCE 两者都是自动序列生成器的功能。大多数 DBMS 都支持标准 IDENTITY 和 SEQUENCE 关键字,但 MySQL 使用 AUTO_INCREMENT 而不是 IDENTITY,并且没有 SEQUENCE 等价物。
标签: mysql sql key primary-key auto-increment