2010-12-15 4 views
1

Access에 쿼리가 있는데 반환 된 행이 없을 때 where not exists 절을 사용하여 각 필드의 특정 텍스트를 표시 할 수 있는지 알고 싶습니다.반환 된 결과가없는 액세스 쿼리

예 쿼리에는 반환 된 결과가없는 경우

Select Field1, Field2, Field3 
From TableA 
Where Field1 = "test"; 

내가하고 싶은 반환하려면 다음

Field1 = "test" 
Field2 = "not provided" 
Field2 = "not provided" 

답변

0

일반적인 방법은 당신이 요구하는지 무엇을해야 할 것은 :

Select Field1, isnull(Field2, 'Not Provided'), isnull(Field3, 'Not Provided') 

편집 누가 당신은 액세스를 사용하고 있습니다.이 경우 동등한 기능은 "nz"입니다 (무엇입니까?) : P)

에 대해 어떻게
Select Field1, nz(Field2, 'Not Provided'), nz(Field3, 'Not Provided') 
+0

, 행이 반환되지 않으며, 예 아니요? – Fionnuala

+0

호기심으로, 누가 Access에서 이것을 시도 했습니까? 왜냐하면 나에게는 행이 반환되지 않기 때문입니다. 즉, 행이 없을 때 Nz는 도움이되지 않습니다. – Fionnuala

+0

테이블에 아무것도없는 경우 아무 것도 반환하지 않습니다. 빈 필드가있는 행에 데이터가 있으면이 오류 값을 반환합니다. – rrrhys

6

: 그것은 심지어 null가 아닌

SELECT Field1, Field2 
FROM Table 
WHERE ID=3 
UNION ALL SELECT DISTINCT "None","None" FROM AnyTableithAtLeastOneRow 
WHERE 3 NOT IN (SELECT ID FROM Table) 
+0

테이블이 비어 있으면 행을 반환하지 않습니까? – phoog

+0

비어 있지 않음이 보장되는 시스템 테이블을 포함하여 모든 테이블을 사용할 수 있습니다. – Fionnuala

+0

이 작업을 수행하기 위해 원하는 값으로 AnyTableithAtLeastOneRow 테이블을 만들어야합니까? – Rick