首页 > 解决方案 > 将空白单元格更新为 NULL 会导致所有单元格为 NULL

问题描述

我有一个查询,我试图用它来仅将具有空字符串的单元格更新为 NULL。但是,当我运行此命令时,所有单元格最终都为 NULL:

UPDATE table_name
SET InvoiceId=NULL,
 LinkedAccountId=NULL,
 RecordId=NULL,
 ProductName=NULL,
 RateId=NULL,
 SubscriptionId=NULL,
 PricingPlanId=NULL,
 UsageType=NULL,
 Operation=NULL,
 AvailabilityZone=NULL,
 ReservedInstance=NULL,
 UsageStartDate=NULL,
 UsageEndDate=NULL,
 UsageQuantity=NULL,
 BlendedRate=NULL,
 UnBlendedRate=NULL,
 ResourceId=NULL,
 Engagement=NULL,
 Name=NULL,
 Owner=NULL,
 Parent=NULL 
WHERE InvoiceId='' 
 OR LinkedAccountId='' 
 OR RecordId='' 
 OR ProductName='' 
 OR RateId='' 
 OR SubscriptionId='' 
 OR PricingPlanId='' 
 OR UsageType='' 
 OR UsageEndDate='' 
 OR Operation='' 
 OR AvailabilityZone='' 
 OR ReservedInstance='' 
 OR UsageStartDate='' 
 OR UsageEndDate='' 
 OR UsageQuantity='' 
 OR BlendedRate='' 
 OR UnBlendedRate='' 
 OR ResourceId='' 
 OR Engagement='' 
 OR Name=''
 OR Owner='' 
 OR Parent='';

我究竟做错了什么?

标签: mysql

解决方案


您正在将所有字段设置为NULL任何字段 =''

您可能需要编写与要更新的字段一样多的查询。

我可能错了,但我认为这不可能在单个查询中完成

UPDATE table_name
SET InvoiceId = NULL
WHERE InvoiceId = ''

这适用于每个领域


推荐阅读