我有下面的代码位MySQL的:检测文本“NULL”或0字段,将其更改为正确的NULL
UPDATE
table_one
SET
field_one = CASE
WHEN field_one = 'NULL' OR field_one = 0
THEN NULL
ELSE field_one
END
所以我想看看现场有一个字符串“NULL”或零(0)值。如果确实如此,则应将其设置为数据库内的NULL。
我遇到的问题是,它将一切设置为NULL在某些字段中,而其他字段没问题。
代码有问题吗?
你的case语句是干什么的0到字符串隐式转换。你说它适用于“某些领域”(列?)数据类型可能无法从一种数据类型转换到另一个会导致您的问题.. – xQbert 2015-04-01 15:21:27
我想我失去的是“它设置了一切在某些字段中为NULL“......您在此更新单个列。当它为0或'Null'时,它应该将该行/列设置为null,那么你能举出一个不按预期工作的例子吗? – xQbert 2015-04-01 15:36:04