집 >데이터 베이스 >MySQL 튜토리얼 >MySQL 자동 증가 열에서 누락된 일련 번호를 찾는 방법은 무엇입니까?
이 쿼리에서 포스터는 중복된 항목이 없음에도 불구하고 테이블의 자동 증가 열에서 누락된 값을 발견했습니다. 문제의 목표는 ID 71-82와 같이 연속되지 않을 수 있는 누락된 숫자의 값을 식별하고 반환하는 것입니다.
더 나은 솔루션
JustPlainMJS는 성능을 크게 향상시키는 대안을 제공합니다.
덜 효율적인 솔루션
테이블 크기에 관계없이 다음 접근 방식을 고려하세요.
<code class="language-sql">SELECT (t1.id + 1) as gap_starts_at, ( SELECT MIN(t3.id) -1 FROM arrc_vouchers t3 WHERE t3.id > t1.id ) as gap_ends_at FROM arrc_vouchers t1 WHERE NOT EXISTS ( SELECT t2.id FROM arrc_vouchers t2 WHERE t2.id = t1.id + 1 ) HAVING gap_ends_at IS NOT NULL</code>
이 쿼리에서:
gap_starts_at
은 현재 간격의 첫 번째 ID를 나타냅니다. gap_ends_at
은 현재 간격의 마지막 ID를 나타냅니다. 위 내용은 MySQL 자동 증가 열에서 누락된 일련 번호를 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!