MS Query Excel iifexpression式语法错误

我在Excel中使用MS Query来执行以下查询:

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

我有一个tabg,fgledg,里面有一个列,egchid。 对于一个特定的凭证(egvono = 51166554),我得到以下几行:

 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 

我想我的查询返回True,如果列egchid包含其他值比GCAJA0和假,如果列只包含值GCAJA0,但我不断收到错误消息,不pipe我怎么写语法。 它似乎至less接受iif函数,但语法不正确?

我已经尝试了编写语法的不同变体,但是得到以下错误消息:

 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 

我究竟做错了什么?

检查你的拼写egachid 。 列名称是EGCHID – >否“A”否则您可以尝试:

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