Access IIF Query - PullRequest
       32

Access IIF Query

1 голос
/ 29 июля 2011

Мне нужно, чтобы мое поле Final Decision было результатом оператора IIF.

Но я продолжаю получать синтаксические ошибки.

    SELECT x.AR_ID, 
           Final Decision: IIf([x].[R_DECISION] Is Not Null,
                               [R_DECISION],
                               IIf([ap_decsion] Is Not Null,
                                   [ap_decsion],
                                   IIf([ho_decision] Is Not Null,
                                       [ho_decision],[ar_decision])
                                   )
                              ) FROM x;

Ответы [ 2 ]

1 голос
/ 29 июля 2011

Вам нужно поместить псевдоним столбца в конце оператора IIF и поместить вокруг него []

  SELECT x.AR_ID, 
         IIf([x].[R_DECISION] Is Not Null,
            [R_DECISION],
            IIf([ap_decsion] Is Not Null,
               [ap_decsion],
                  IIf([ho_decision] Is Not Null,
                     [ho_decision],
                     [ar_decision]))) as [Final Decision:]

  FROM x;
0 голосов
/ 29 июля 2011

Попробуйте вместо этого использовать ISNULL:

SELECT x.AR_ID, Final Decision: IIf(NOT ISNULL([x].[R_DECISION]),[R_DECISION],IIf(NOT ISNULL([ap_decsion]),[ap_decsion],IIf(NOT ISNULL([ho_decision]),[ho_decision],[ar_decision]))) FROM x;

...