2016-07-10 2 views
0

최신 5 레코드 (id로 정렬)를 제외한 모든 레코드를 삭제하고 싶습니다. 나는 "chat"테이블을 가지고 있으며, "time"에 기록 된 레코드를 가지고있다. 1 개의 검색어로 어떻게 할 수 있습니까?최신 레코드를 제외한 모든 레코드 삭제 5

대단히 감사합니다.

+0

삭제에 의해 및 제한 명령이 있습니다. 올바른 설정에서 카운트가 해당 정보를 사용하는 것을 알 수 있습니다. 이벤트를 사용하여이를 처리하거나 트리거 할 수 있습니다. 너의 생각을 바꿔라. – Drew

답변

0

당신은 단순히 IN()LIMIT를 사용하여 삭제할 수 있습니다

DELETE FROM YourTable 
WHERE ID NOT IN(SELECT id FROM YourTable 
       ORDER BY id DESC LIMIT 5) 
+0

SQL 구문에 오류가 있습니다. 귀하의 MySQL 서버 버전에 해당하는 매뉴얼을 확인하여 올바른 구문을 찾으십시오. 라인 1의 '9999999999'근처에서 사용하십시오. –

+0

@DanielYeffet 아하 더 오래된 버전입니다. 지금 시도해보십시오. – sagi

관련 문제