레코드 삭제를 통해 행이 누락되는 테이블이 있습니다.MySQL에서 행 누락 워크
어떻게 그 테이블에서 누락 된 행을 확인한 다음 PHP에서 누락 된 행을 채울 수 있습니까?
내가 올바른 루프 밖으로 단지 캔트 작업 순서에 누락 된 항목을 찾을 수
건배
에게레코드 삭제를 통해 행이 누락되는 테이블이 있습니다.MySQL에서 행 누락 워크
어떻게 그 테이블에서 누락 된 행을 확인한 다음 PHP에서 누락 된 행을 채울 수 있습니까?
내가 올바른 루프 밖으로 단지 캔트 작업 순서에 누락 된 항목을 찾을 수
건배
에게한 가지 방법을 사용하기 위해 사용하지만 루프 추측 횟수 (*) 및 최대 (ID를 비교하는 것입니다). 누락 된 개수를 파악한 다음 이진 검색에서와 같이 확인하는 범위를 포함하여 시작해야합니다.
대체 방법은 id에 의해 정렬 된 행을 반복하는 것이며 시퀀스가 점프 할 때 삽입을 트리거합니다.
$lastId = 0;
foreach ($rows as $row)
{
if ($lastId + 1 != $row['id']) {
fillInRows($lastId + 1, $row['id'] -1);
}
$lastId = $row['id'];
}
function fillInRows($min, $max)
{
for ($i = $min; $i <= $max; $i++) {
// exercise left for the reader
}
}
감사합니다, 이것은 정확히 내가 무엇을 찾고 있었는지 - 분명히 질문은 운영자가 생각한 것처럼 막연하지 않습니다. –
질문을 명확히해야합니다. – simshaun
왜 누락 된 행을 채워야합니까? – Problematic
우리가 볼 수 있도록 코드를 게시하여 매번 제가 말한 니켈이 있다면 .... – Drewdin