2013-11-27 6 views
0

테이블 만들기 쿼리를 기반으로 Access에서 업데이트 쿼리를 작성하고 있습니다.WHERE 조건에서 IIf()를 사용하여 업데이트 쿼리

내 임시 테이블 (내 테이블 만들기 쿼리의 출력)에는 3 개의 [Tick], [DivLevel4] 및 [T] 필드가 있습니다. 나는 동일 할 수 있습니다 [T]를 다른 값 (만 C 또는 F)를 곰 [DivLevel4] 경우에 대해 다른 값을 표시하는 눈금 :

Tick DivLevel4 T 

AA  5   C 
AA  0   F 
BB  2   C 
CC  3   C 
CC  0   F 

가 어떻게 내 업데이트 쿼리에서이 조건을 통합 할 수 있습니다? 나는 기준 필드에 IIf() 문을 추가 시도했지만 그것은 일을하지 않습니다 :

IIf([tblTrades].[T]="Y",0,[tbl_DIV_Temp].[[DivLevel4]) 

UPDATE 
    tblTrades 
    INNER JOIN 
    tbl_DIV_Temp 
     ON tblTrades.Tick = tbl_DIV_Temp.Tick 
SET tblTrades.DIV = [tbl_DIV_Temp].[DivLevel4] 
WHERE (((tblTrades.DIV)=IIf([tblTrades].[T]="F",0,[tbl_DIV_Temp].[DivLevel4]))); 
+0

두 가지 조건을 충족시키기 위해 두 개의 업데이트 문을 실행할 수없는 이유가 있습니까? 네가하려는 일이 가능할지 모르겠다. 다른 옵션은 DLookup을 사용하여 tbl_Div_Temp.DivLevel4 값을 가져온 다음 Update 문에서 원시 변수 (변수 사용)를 사용하는 것입니다. – HK1

+0

'tblTrades.T = "F"'일 때'tblTrades.DIV = tbl_DIV_Temp.DivLevel4'을 설정하는 방법을 묻고 있습니까? – Blackhawk

+0

아니면 tblTrades.DIV = tbl_DIV_Temp.Tick (tblTrades.T = "F"가 아닌 경우 if tblTrades.DIV = 0 "으로 설정하십시오)으로 설정 하시겠습니까? – Blackhawk

답변

0

주제는 가까이에있다. 대체 방법을 찾았습니다.