0
가지 치기 프로세스의 일부로 더 이상 사용되지 않는 테이블에서 데이터를 삭제하려고합니다. 결과 (표 Res)가있는 검색 작업 (표 검색)이 있고 사람들은 이메일을 통해 검색 결과 (표 Abo)를 수신합니다. 모든 보너스에 대해 이메일을 통해 전송 된 마지막 결과는 "last_result"열에 저장됩니다.다른 테이블에서 조회를 사용하여 하나의 테이블에서 삭제
내가 원하는 작업 : 모든 검색 작업에 대해 사용자에게 전송 된 모든 결과를 삭제하려고합니다.
이 구조의 단순화 된 변형입니다 : 나는 모든 "검색"값에 대해
DELETE r
FROM Res r
JOIN Abo a ON r.search = a.search
WHERE
r.id < min(a.last_res)
:
http://sqlfiddle.com/#!9/5ef8a3
Abo
---
user search last_result
A 1 100
B 1 200
C 2 50
D 3 100
Res
---
id search
50 1 <---- this should be deleted
300 1
51 2
Search
------
1
2
3
내가하려고 어떤 일이 같은 것입니다 "Abo"테이블의 "last_res"필드 아래에있는 모든 결과 ("Res")를 삭제하려고합니다.
'r.search = a.search'가있는 두 개의 테이블에는 행이 없습니다. 그것들이 들판에 합류하는 분야라고 확신합니까? – Barmar
실수로 열을 바꿨습니다. –