【发布时间】:2015-10-10 16:09:25
【问题描述】:
我有一个 MySQL 表,里面有几个列,比如
id text_1 val_1 text_2 text_3 val_2
1 'bla' 1,23 'blub' 5,67 12,34
很遗憾,所有字段都定义为varchar。现在我尝试更改表格以使某些字段为十进制值。
我会试试的
UPDATE table SET
val_1 = CAST(val_1 AS DECIMAL(5,2)),
val_2 = CAST(val_2 AS DECIMAL(5,2));
这应该给我带有两位小数和最大值 999,99 的十进制值,对吗?
这是改变表结构的正确方法吗?这应该是一次性转换,因为值应该是 da decimal 类型,而字符串应该是 varchar 类型。
我必须先将“逗号”转换为“点”吗?
更新
不幸的是,我也有像 `
【问题讨论】:
-
没有。除此之外,您需要更改数据类型,您还应该更改完整的表结构。表包含什么。我们或许可以帮助您做出更好的餐桌设计。
标签: mysql