0
두 열의 값으로 식별되는 테이블에서 행을 선택하려고합니다. 값은 다른 테이블에 있습니다. 예 도움이 될 것입니다SQL : 다른 테이블에서 선택한 열을 기반으로 테이블에서 행 삭제
표
A | B | C
101 1 x
102 1 o
103 1 o
을
SELECT A, B FROM Table1 where Table1.C = 'o'
반환 : 나는 표 2의 행을 삭제할
A | B
102 1
103 1
경우 A와 B가 일치 표에서 쿼리에 의해 반환 된 .
A | B | D
101 1 Not selected
첫 번째 선택 작품,하지만 난 거기에서 어디로 볼 수 없습니다 :
표 2
A | B | D
101 1 Not deleted
102 1 Deleted
103 1 Deleted
이된다. 현재 다음과 같은 사항이 있지만 오류가 발생하고 무엇을해야하는지 명확하지 않습니다. 튜토리얼은 SQL을 처음 사용하기 때문에 환영합니다. 당신이 당신의 쿼리로 IN
절을 사용하는 경우
DELETE Table2
where A, B in
(SELECT A, B FROM Table1
where Table1.C = 'o')
첫 번째 쿼리는 102 행을 반환합니다. 입출력 데이터를 확인해 주시겠습니까? –
죄송합니다, typo가 수정되었습니다. 102 행과 103 행을 리턴해야합니다. –