2014-04-10 3 views
0

그래서 난 쿼리를 작성하고, 알고 궁금하고 이전 IF() 결과에 따라 :ACCESS의 SQL IF() 나는 몇 IIF을() 문</p> <p>예 경우

SELECT a.RecID, a.DTP_Date as '834Effective', b.[Eff Date], a.[Fed ID] as '834PCP', b.[Provider ID] as '040914PCP', c.PCP_Nbr as 'MEPCP', d.PCP_Nbr as 'PCPHistoryActivePCP', 
IIF(a.[Fed ID] = d.PCP_Nbr, 'MatchPCPHistory', 'NOMATCH') as '834_PCP_HistoryMatch', 
IIF(a.[Fed ID] = b.[Provider ID] , 'Match0409PCP', 'NOMATCH') as '834_0409Match' 

I 그 직후에 또 다른 IIF를 원한다고 말하면 ...

IIF(IIF(a.[Fed ID] = d.PCP_Nbr, 'MatchPCPHistory', 'NOMATCH') = 'MatchPCPHistory' 
AND IIF(a.[Fed ID] = b.[Provider ID] , 'Match0409PCP', 'NOMATCH') = 'Match0409PCP', 'UPDATE', 'NOUPDATE') 

이 최종 iif 문을 상위 상위 항목으로 전달하려면 시각적으로 도움이됩니다.

이 쿼리는 작동하지 않지만 어쩌면 얻을 수 있습니까? 나는 Access가 까다 롭다는 것을 압니다. 사전에

감사합니다!

답변

1

이렇게 할 수는 있지만 처음부터하고 싶습니까? 이 값으로 이어지는 원래 조건을 이미 알고 있으므로 값 대신 원래 조건을 사용하십시오. 이것을 시도하십시오 :

IIF(a.[Fed ID] = d.PCP_Nbr AND a.[Fed ID] = b.[Provider ID], 'UPDATE', 'NOUPDATE') 
+0

Nevermind, 나는 방금 UPDATE와 NOUPDATE를 전환했는데 훨씬 나아졌습니다. 감사. 좋은 지적. – Hituptony