MySQL 中按组自动递增
MySQL 用户有时需要根据特定分组为行分配自动递增值柱子。例如,考虑一个包含 id、name 和 group_field 列记录的表。
要实现按组自动递增,可以利用一种策略,为 MyISAM 和 BDB 表创建键的次要部分:
CREATE TABLE foo ( id INT AUTO_INCREMENT NOT NULL, group_field INT NOT NULL, name VARCHAR(128), PRIMARY KEY(group_field, id) );
根据 MySQL 手册,“id”列的自动增量值使用以下公式确定:
MAX(auto_increment_column) 1 WHERE prefix=given-prefix
其中“前缀”对应于“group_field”列中的值。事实证明,这种方法对于将数据组织成连续的组特别有用。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3