내부 조인이있는 테이블을 업데이트하는 방법에 대해 궁금합니다.mysql에서 내부 조인 구문을 사용하여 테이블을 업데이트하십시오.
update tbl1 a
inner join tbl2 b using (id)
set a.val = b.val;
tbl1
의 레코드에 무슨 일 tbl2
에 일치하지 않습니다 난 다음 문을 실행하면? tbl1
에 그대로 업데이트되고 남아 있지 않습니까? 삭제 될 것인가?
나는 이것을 실행할 수 있고 대답을 얻는다는 것을 알고 있지만, 나는 또한이 배경에서 어떻게 작동하는지에 대한 메커니즘에 관심이 있으며, 누군가 나를 위해 이것을 설명 할 수 있기를 바랬다.
나는 백그라운드에서 무슨 일이 일어나고 있는지 이해하려고 노력 중이다. 예를 들어 왼쪽 또는 오른쪽으로 가입했다면 어떨까요? mysql은 일치하지 않는 행에 대해 값을 어떻게 설정합니까? 나는 배경에서 무슨 일이 일어나고 있는지에 대해 이해하려고 노력하고있다. 예를 들어'tbl2'에 일치하는 행이없는 왼쪽 조인 시나리오에서 null이 될까요? – Alex
tbl2에 일치하는 행이 없으면 a.val이 NULL로 설정됩니다. –
그러면 내부 조인과 왼쪽 조인의 업데이트가 어떻게 다릅니 까? 그것은 그들이 여기 같은 물건 인 것 같습니다. – Alex