我错误地在#34; VARCHAR"类型的一列中输入了2个值。以这种格式 value1.value2(浮点值格式),例如5.10,4.0,3.11等
现在我想将这两个值分成两个单独的列,类型为" INT" 我已经创建了列,我只需要一个查询。
我不知道如何编写查询来拆分一列的值并更新其他列。 任何知道的人,请帮忙。
由于
答案 0 :(得分:2)
在MySQL中这很容易做到:
select cast(substring_index(varcharcol, '.', 1) as unsigned) as val1,
cast(substring_index(varcharcol, '.', -1) as unsigned) as val2
编辑:
如果您愿意,也可以在update
:
update table t
set val1 = cast(substring_index(varcharcol, '.', 1) as unsigned),
val2 = cast(substring_index(varcharcol, '.', -1) as unsigned)