MS Access如果条件只更新某些数据

时间:2017-08-11 16:51:52

标签: sql ms-access

我有一个查询来更新MS访问表的True或false,很少行也包含“-1”或“0”,现在,我需要一个查询只更新表“-1”或“0”。请注意,我有15个字段要在相同的表中更新,具有相似的数据(-1或0)。我无法给出标准因为15个字段不允许标准查找或条件。这是当前查询,由于数据量巨大,需要很长时间才能更新表。

UPDATE [2017 OpsData] 
SET [2017 OpsData].[FLG-ContProd] = 
    IIf([2017 OpsData].[FLG-ContProd]="-1","TRUE",
    IIf([2017 OpsData].[FLG-ContProd]="0","FALSE",
    IIf([2017 OpsData].[FLG-ContProd]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-OutOfScope] = 
    IIf([2017 OpsData].[FLG-OutOfScope]="-1","TRUE",
    IIf([2017 OpsData].[FLG-OutOfScope]="0","FALSE",
    IIf([2017 OpsData].[FLG-OutOfScope]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-Stabilize] = 
    IIf([2017 OpsData].[FLG-Stabilize]="-1","TRUE",
    IIf([2017 OpsData].[FLG-Stabilize]="0","FALSE",
    IIf([2017 OpsData].[FLG-Stabilize]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-FastTrack] = 
    IIf([2017 OpsData].[FLG-FastTrack]="-1","TRUE",
    IIf([2017 OpsData].[FLG-FastTrack]="0","FALSE",
    IIf([2017 OpsData].[FLG-FastTrack]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-FLR] = 
    IIf([2017 OpsData].[FLG-FLR]="-1","TRUE",
    IIf([2017 OpsData].[FLG-FLR]="0","FALSE",
    IIf([2017 OpsData].[FLG-FLR]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-MetSLA] = 
    IIf([2017 OpsData].[FLG-MetSLA]="-1","TRUE",
    IIf([2017 OpsData].[FLG-MetSLA]="0","FALSE",
    IIf([2017 OpsData].[FLG-MetSLA]="TRUE","TRUE","FALSE"))),
[2017 OpsData].[FLG-ReOpen] = 
     IIf([2017 OpsData].[FLG-ReOpen]="-1","TRUE",
     IIf([2017 OpsData].[FLG-ReOpen]="0","FALSE",
     IIf([2017 OpsData].[FLG-ReOpen]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-SpeakUp] = 
     IIf([2017 OpsData].[FLG-SpeakUp]="-1","TRUE",
     IIf([2017 OpsData].[FLG-SpeakUp]="0","FALSE",
     IIf([2017 OpsData].[FLG-SpeakUp]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-HIPAA] = 
     IIf([2017 OpsData].[FLG-HIPAA]="-1","TRUE",
     IIf([2017 OpsData].[FLG-HIPAA]="0","FALSE",
     IIf([2017 OpsData].[FLG-HIPAA]="TRUE","TRUE","FALSE"))), 
[2017 OpsData].[FLG-CSATBounce] = 
     IIf([2017 OpsData].[FLG-CSATBounce]="-1","TRUE",
     IIf([2017 OpsData].[FLG-CSATBounce]="0","FALSE",
     IIf([2017 OpsData].[FLG-CSATBounce]="TRUE","TRUE","FALSE"))),
[2017 OpsData].[FLG-CA-ENGLISH] = 
      IIf([2017 OpsData].[FLG-CA-ENGLISH]="-1","TRUE",
      IIf([2017 OpsData].[FLG-CA-ENGLISH]="0","FALSE",
      IIf([2017 OpsData].[FLG-CA-ENGLISH]="TRUE","TRUE","FALSE")));

0 个答案:

没有答案