首页 > 解决方案 > SQL:在 MS Access 中使用带有 CASE 语句的 IIF 来填充一列

问题描述

我想知道在为 MS Access 编写 SQL 代码时如何或是否可以在 CASE 语句中使用 IIF 语句。我正在尝试根据其他列的输入填充单个列。

我已经通过编写以下代码并研究如何在 MS Access 中使用 CASE 语句来尝试过它。

RE020_STATUS: 
CASE 
WHEN IIf([03_RE]![RE060_ACTUAL] Is Null,"Pending RE060",IIf([03_RE]![RE097_ACTUAL] Is Null,"Pending RE097",IIf([04_CI001_CI091]![CI050_ACTUAL] Is Null,"Pending CI050",IIf([04_CI001_CI091]![CI081_ACTUAL] Is Null,"Pending CI081",IIf([01_JobDetails_JI_CL]![CL001_ACTUAL] Is Null,"Pending CL001",IIf([01_JobDetails_JI_CL]![CL100_ACTUAL] Is Null,"Pending CL100",IIf([05_CI093_CI164]![CI139_ACTUAL] Is Null,"Pending CI139",IIf([05_CI093_CI164]![CI140_ACTUAL] Is Null,"Pending CI140","Pending CL101")))))))) 
WHEN IIf([03_RE]![RE020_FORECAST] Is Null,IIf([01_JobDetails_JI_CL]![CL001_ACTUAL] Is Null,"Pending CL001",IIf([01_JobDetails_JI_CL]![CL100_ACTUAL] Is Null,"Pending CL100",IIf([05_CI093_CI164]![CI139_ACTUAL] Is Null,"Pending CI139",IIf([05_CI093_CI164]![CI140_ACTUAL] Is Null,"Pending CI140","Pending CL101"))))) 
END

到目前为止,我得到的只是关于代码编写方式的错误,即我缺少操作数、表达式或语句。

标签: sqlms-access

解决方案


推荐阅读