MySQL의 자동 증가 필드 그룹화
MySQL에서는 그룹화 열을 기준으로 증가하는 자동 증가 필드를 생성할 수 있습니다. 그룹화된 데이터 정렬을 위해.
구현
MyISAM 및 BDB 테이블의 경우 다음 테이블 구조를 활용할 수 있습니다.
CREATE TABLE foo ( id INT AUTO_INCREMENT NOT NULL, group_field INT NOT NULL, name VARCHAR(128), PRIMARY KEY(group_field, id) );
설명
이 구조를 사용하면 "id" 열의 자동 증가 값이 다음 공식에 의해 결정됩니다.
MAX(auto_increment_column) 1 WHERE prefix=given-prefix
이 경우 "접두사"는 "group_field" 열의 값을 나타내며 자동 증가 계산을 위해 데이터를 효과적으로 그룹화합니다.
예
다음 표를 고려하세요.
id | name | group_field |
---|---|---|
1 | test | 1 |
2 | test2 | 1 |
1 | test3 | 2 |
2 | test4 | 2 |
1 | test5 | 3 |
2 | test6 | 3 |
새 레코드를 삽입하면 "id" 열이 각 그룹 내에서 자동으로 증가하여 다음과 같은 결과가 발생합니다.
id | name | group_field |
---|---|---|
3 | test | 1 |
4 | test2 | 1 |
3 | test3 | 2 |
4 | test4 | 2 |
3 | test5 | 3 |
4 | test6 | 3 |
이 그룹화 동작은 다음과 같습니다. 테이블의 데이터를 구성하고 정렬하는 데 유용합니다.
위 내용은 MySQL의 특정 열을 기반으로 데이터를 그룹화하는 자동 증가 필드를 어떻게 생성합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!