다른 테이블의 정보를 사용하여 테이블을 업데이트하려고합니다. 업데이트하고 싶은 테이블을 YVDtemp라고하고 두 번째 테이블에서 정보를 가져 오는 테이블을 yvs_textsMain이라고합니다. 또한 3 번째 테이블을 사용하여 필자가 가지고 있지 않은 레코드를 찾았고이 테이블을 YVD라고합니다. 여기 내 업데이트 성명서입니다.하위 쿼리를 사용하여 업데이트 문을 수행하는 방법은 무엇입니까?
update Yvdtemp
set
NAME = yvd_textsmain.[name]
SPIC = yvd_textsmain.[rname]
EFFECT = yvd_textsmain.[desc]
where exists (
select yvd_textsMain.[name], yvd_textsMain.[rname], yvd_textsMain.[desc]
from YVD_textsMain
left outer join YVD
on (YVD_textsMain.[rname] = yvd.[spic])
where yvd.[spic] is null);
이 문장은 작동하지 않는 것으로 보입니다. 그것은 저에게 "가까운 'spic'오류를 제공합니다 : 구문 오류 하지만, 선택 문을 사용하여 선택 문을 작동하지 않고 선택 문을 사용하면 YVD 테이블 및 해당 정보가없는 모든 정보를 얻을 업데이트 문에서 행을 매핑하는 방법 Yvdtemp
및 yvd_textsmain
사이의 일치 조건이 없기 때문에 YVDTemp 테이블로 전달합니다. 내가 SQLite는 사용하고
.
는'NAME = yvd_textsmain해야한다 [이름], SPIC = yvd_textsmain [RNAME, 효과 = yvd_textsmain... [desc]' – Deepshikha