2013-03-13 2 views
1

예를 들어 Office에 고객 ID를 반환하는 쿼리 Q가 있습니다. 그러나 특정 컨텍스트에서 애틀랜타에 하드 코딩해야하는 고객 ID 목록이 포함 된 별도의 쿼리 S가 있습니다. 질의 : 나는 "쿼리 Q를 실행하지만, 고객 ID는 S에있는 경우 대신 일반 사무실 값을 사용하고, S에서 사무실 값 사용"라고어떤 조건을 만족하는 쿼리의 값을 대체하는 방법은 무엇입니까?

예 Q를 얼마나 그래서

선택 CustID, SourceTable

예 S에서 사무실 : 테이블 : 목록 CustID의

내가했다 그래서 난의 말을하자 그 자체로 Q를 표시하는 경우, 예를 들어 :

JONES1  Las Vegas 
SMITH2  Miami 

그러나 JONES1은 S에, 그래서 실제로

+0

쿼리 디자인 창을 사용하여 두 테이블을 추가하고 한 테이블에서 다른 테이블로 관련 필드를 드래그하여 조인을 추가 한 다음 방금 그린 선을 마우스 오른쪽 단추로 클릭하고 Q의 모든 레코드와 S의 관련 레코드 만 선택했는지 확인하십시오 원하는 필드를 선택하십시오. SQL보기로 전환하고 여기에 귀하의 요구 사항에 맞지 않는 곳에 메모를 적어 여기에 SQL을 게시하십시오. – Fionnuala

+0

기본 쿼리에서 Nz() 함수를 사용하여 쿼리 S에서 외부 조인을 사용할 수 있습니다. 쿼리 Q와 쿼리 S를 보여주기 위해 질문을 편집하면 더 잘 설명 할 수 있습니다. – grahamj42

+0

일부 예제 SQL을 사용하여 OP를 업데이트했습니다. – DoubleBass

답변

0

는이 라인에 뭔가 시도 (나는 Q를 끌어 때 애틀랜타를 표시해야합니다 S의 모든 custID 년대)

JONES1  Atlanta 
SMITH2  Miami 

를 표시하려면 :

SELECT q.CustID, IIf(IsNull(s.Office), q.Office, s.Office) 
FROM SourceTable q 
LEFT JOIN s 
ON q.CustID = s.CustID 
+0

My Q 쿼리는 실제로 보여준 것보다 훨씬 복잡합니다. Design View 창에서이 작업을 수행 할 수있는 방법이 있습니까? – DoubleBass

+0

아마 내 질문을 읽을 수있는 기회가 없었습니다.이 질문에 대해 쿼리 디자인 창을 사용하는 방법이 설명되어 있습니까? – Fionnuala

+0

나는 방금 그것을 다시 보았다. 그래서 나는 앞으로 나아가 이것을 대답으로 받아 들였다. 감사! – DoubleBass

관련 문제