我使用的是MySQL社区服务器5.1。有没有办法只用一个查询就把所有行都设置回它们的默认列值?
我只是添加了很多行。我为大多数指定的列设置了默认值,但由于某种原因,所有列值都设置为=0。我想知道是否有一个查询将所有列值设置为它们的默认值,并且我还需要where子句的能力。
例如,类似于以下内容:
update table set values = values(default) where id > 300;谢谢!
发布于 2012-07-23 22:47:55
INSERT和UPDATE查询中有一个DEFAULT关键字,您可以使用它来代替任何实际列值:
update my_table set my_column = DEFAULT where id > 300;作为文档记录的in the MySQL Manual
注意,正如在前面的回答中提到的,还有一个DEFAULT() function;使用它可以选择要使用的任何列的默认值。
发布于 2012-07-23 22:39:02
您应该尝试:
UPDATE table_name SET col = DEFAULT(col) WHERE id > 300;https://stackoverflow.com/questions/11614722
复制相似问题