MySQL(具体是5.0)有没有办法让auto_increment字段的值基于分组列?
例:
id name group_field 1 test 1 2 test2 1 1 test3 2 2 test4 2 1 test5 3 2 test6 3
我不想通过任何"疯狂"的方法来实现这个目标,但如果有必要的话.
对于MyISAM和BDB表,您可以将auto_increment字段作为键的次要部分,例如
CREATE TABLE foo ( id INT AUTO_INCREMENT NOT NULL, group_field INT NOT NULL, name VARCHAR(128), PRIMARY KEY(group_field, id) );
以下是手册对此的说法
在这种情况下,AUTO_INCREMENT列的生成值计算为MAX(auto_increment_column)+ 1 WHERE prefix = given-prefix.当您想要将数据放入有序组时,这非常有用.