2016-08-12 1 views
1

저번 나는 다음과 같은 쿼리를 실행 Excel에서 MS 쿼리를 사용하고 있습니다 :는 MS 쿼리 엑셀 식 구문 오류

select 
iif(egachid <>'GCAJA0', True, False) 
from fgledg 
where egcono='1'and egdivi='D30'and egvono=51166554 

나는 열, egchid을 포함하는 tabel, fgledg을 보유하고 있습니다. 특정 바우처 (egvono = 51166554)를 위해 나는 다음 행을 얻을 : 열 egchid이 GCAJA0 이외의 값이 포함 된 경우 내가 True를 반환 내 쿼리를 싶습니다

EGCONO EGDIVI EGYEA4 EGVONO  EGCHID 
1   D30  2015 51166554 GCAJA0 
1   D30  2015 51166554 GCAJA0 
1   D30  2015 51166554 GCAJA0 
1   D30  2015 51166554 GCAJA0 
1   D30  2015 51166554 SEBSHHASP 
1   D30  2015 51166554 SEBSHHASP 
1   D30  2015 51166554 SEBSHHASP 

을하고, 컬럼은 값 GCAJA0 포함되어있는 경우는 false 하지만 구문을 쓰는 방법에 관계없이 오류 메시지가 계속 표시됩니다. 최소한 iif 함수를 허용하는 것으로 보이지만 구문이 잘못 되었습니까?

나는 구문을 작성 diffrent 변화를 시도했지만 다음과 같은 오류 메시지를 얻을 수있다 : 내가 잘못 뭐하는 거지

IIf(egachid <>'GCAJA0', True, False)  Token <> was not valid 
IIf(egachid = 'GCAJA0', False, True)  Token = was not valid 
IIf([egachid] <>'GCAJA0', True, False)  Token [ was not valid 
IIf([egachid] <>'GCAJA0', 'True', 'False') Token [ was not valid 

를?

답변

0

맞춤법을 확인하려면 egachid을 확인하십시오. 열 이름은 EGCHID 없다 -> 더 그밖에 "A" 당신이 시도 할 수 있습니다 :

SELECT CASE WHEN egachid CONTAINS 'GCAJA0' THEN False ELSE True END AS name 
+0

안녕 다니엘, 당신은하지만, 내가 같은 오류 메시지가 바로 맞춤법에 대해 compleately입니다. CASE WHEN 함수는 MS Query Excel에서 지원되지 않습니다. 그것이 내가 그것을 사용할 수없는 이유입니다. – Lily

+0

'SELECT IFF (EGCHID CONTAINS 'GCAJA0', False, True)'시도 일반적으로 문자열에 <>를 사용하고 싶지 않습니다. 그렇지 않으면'EGCHID LIKE 'GCAJA0''을 사용하십시오. –

+0

작동하지 않았습니다. 나는 둘 다 (포함하고 좋아한다) 시도했다. 그것은 어떤 조건을 받아들이지 않는 것 같습니다 : ... ( 난 그냥 WinSQL을 다운로드하고 사례 옵션을 할거야. 어쨌든 고마워! :) – Lily