访问结果比较多个列的结果



首先,我只想说谢谢您的所有帮助。我在查询的下一步中有一个新问题。

  • 对于每个记录,有三列。为了论证,让称他们为a,b和c。
  • 在每一列中可以有四个结果:通过,未测试,低,高
  • 未进行测试,可以将通行证视为通行证。
  • 低和高可以视为失败。

我想在另一列中看到结果,如果A,B或C列中有任何故障语句,将显示失败响应。否则将在新列中显示通行证。

A------------B.---------- C.---------RESULT.-------
PASS---------PASS---------PASS-------PASS----------
High---------PASS---------PASS------ FAIL----------
Not Tested---PASS---------PASS-------PASS----------
LOW----------PASS---------PASS-------FAIL----------

谢谢,

将列的默认值设置为"通过",然后运行以下查询:

UPDATE ATable SET ATable.D = "FAIL"
WHERE (((ATable.A)="high" Or (ATable.A)="low")) OR (((ATable.B)="high" Or (ATable.B)="low")) OR (((ATable.C)="high" Or (ATable.C)="low"));

以下情况如何?您需要做的就是检查三列中的任何一个是否具有"失败"或"低"或"高"以表示故障。或者您可以翻转逻辑...

SELECT Table1.A, Table1.B, Table1.C, 
    IIf([a]='Fail' Or [a]='Low' Or [a]='High','Fail',
    IIf([b]='Fail' Or [b]='Low' Or [b]='High','Fail',
    IIf([c]='Fail' Or [c]='Low' Or [c]='High','Fail','Pass'))) AS Result
    FROM Table1;

这是翻转逻辑:

SELECT Table1.A, Table1.B, Table1.C, 
    IIf([a]='Pass' Or [a]='Not Tested',
    IIf([b]='Pass' Or [b]='Not Tested',
    IIf([c]='Pass' Or [c]='Not Tested','Pass','Fail'),'Fail'),'Fail') AS Result2
    FROM Table1;

最新更新