0
이것은 MS Access 관련 게시물입니다.UPDATE 여러 필드, 여러 조건 쿼리
어떻게 INSERT INTO 문을 UPDATE 문으로 변경할 수 있습니까?
DoCmd.RunSQL "INSERT INTO A_tblStagingTablesChecksHEADERS (Header, Header2) " _
& "SELECT DISTINCT(SELECT F1 FROM tblStagingIssuerNames_ReverseRepos " _
& "WHERE F1 = 'ISSUER CODE') as F1data, " _
& "(SELECT F51 FROM tblStagingIssuerNames_ReverseRepos " _
& "WHERE F51 = 'INSTRUMENT REFERENCE (BOE)') as F2data " _
& "FROM tblStagingIssuerNames_ReverseRepos;"
나는 아래의 (실패)를 시도 : (와 별칭없이) 모두 문의 경우
DoCmd.RunSQL "UPDATE A_tblStagingTablesChecksHEADERS, tblStagingIssuerNames_ReverseRepos " _
& "SELECT DISTINCT(SELECT F1 FROM tblStagingIssuerNames_ReverseRepos " _
& "WHERE F1 = 'ISSUER CODE') as F1data, " _
& "SELECT DISTINCT(SELECT F51 FROM tblStagingIssuerNames_ReverseRepos " _
& "WHERE F51 = 'INSTRUMENT REFERENCE (BOE)') as F2data " _
& "FROM tblStagingIssuerNames_ReverseRepos," _
& "SET A_tblStagingTablesChecksHEADERS.Header = F1data, " _
& "SET A_tblStagingTablesChecksHEADERS.Header2 = F2data;"
, 내가 런타임 오류 '3075'를 얻을 :
구문 쿼리 식의 오류 '(SELECT DISTINCT (SELECT F1 FROM tblStagingIssuerNames_ReverseRepos WHERE F1 ='ISSUER CODE '))'를 참조하십시오.
@ Rono 답장을 보내 주셔서 감사합니다. 별칭은 필수적이라고 생각합니다. 스크립트의 대괄호 안팎에서 스크립트를 추가하려고 시도했지만 구문 오류 메시지가 계속 표시됩니다. – ProtoVB
UPDATE 문에 별칭이 필요하지 않습니다. 내부 select 문 중 하나가 둘 이상의 레코드를 반환하는 경우 오류 메시지를받을 수있는 방법을 볼 수 있지만 얻는 오류 메시지를 알고 있어야합니다. – Rono
@ Rono,이 피스에 사용 된 초기 SELECT 문은 여러 레코드 (실제로 기본 테이블에있는 레코드 수)를 검색 했으므로 DISTINCT를 추가 한 이유입니다. DISTINCT를 사용하여 단일 레코드를 얻습니다. 내 게시물에 오류의 설명을 추가 할 것입니다. – ProtoVB