2013-02-25 123 views
0

我有一个SQL问题,对某些人来说可能是基本的,但让我感到困惑。这里有一个表的例子:仅当字段为空时将列复制到另一列

buu_properties_products (price, years, area, covered_area) 

现在我想的area列字段复制到covered_area字段,但只有当covered_area字段为空。

我在这个表中有近1000个产品,我需要更新这些列而不删除它们出现时的covered_area值。

我正在运行MySQL 5.1

回答

7

取决于“空”的含义。如果这意味着NULL

UPDATE buu_properties_products 
SET covered_area = area 
WHERE covered_area IS NULL 

如果这意味着一个空字符串:

UPDATE buu_properties_products 
SET covered_area = area 
WHERE covered_area = '' 

如果指:

UPDATE buu_properties_products 
SET covered_area = area 
WHERE covered_area IS NULL OR covered_area = '' 
+0

谢谢SOOO多,它的工作。 – ol30cean0 2013-03-05 19:49:27

+0

@ user2105729如果您发现它有帮助,请记住[upvote or accept](http://meta.stackexchange.com/a/168143/206447)此答案。 – Dukeling 2013-03-05 20:00:52

相关问题