최신 5 레코드 (id로 정렬)를 제외한 모든 레코드를 삭제하고 싶습니다. 나는 "chat"테이블을 가지고 있으며, "time"에 기록 된 레코드를 가지고있다. 1 개의 검색어로 어떻게 할 수 있습니까?최신 레코드를 제외한 모든 레코드 삭제 5
대단히 감사합니다.
최신 5 레코드 (id로 정렬)를 제외한 모든 레코드를 삭제하고 싶습니다. 나는 "chat"테이블을 가지고 있으며, "time"에 기록 된 레코드를 가지고있다. 1 개의 검색어로 어떻게 할 수 있습니까?최신 레코드를 제외한 모든 레코드 삭제 5
대단히 감사합니다.
당신은 단순히 IN()
및 LIMIT
를 사용하여 삭제할 수 있습니다
DELETE FROM YourTable
WHERE ID NOT IN(SELECT id FROM YourTable
ORDER BY id DESC LIMIT 5)
SQL 구문에 오류가 있습니다. 귀하의 MySQL 서버 버전에 해당하는 매뉴얼을 확인하여 올바른 구문을 찾으십시오. 라인 1의 '9999999999'근처에서 사용하십시오. –
@DanielYeffet 아하 더 오래된 버전입니다. 지금 시도해보십시오. – sagi
삭제에 의해 및 제한 명령이 있습니다. 올바른 설정에서 카운트가 해당 정보를 사용하는 것을 알 수 있습니다. 이벤트를 사용하여이를 처리하거나 트리거 할 수 있습니다. 너의 생각을 바꿔라. – Drew