gpt4 book ai didi

mysql - 将具有负值和小数的字符串转换为正确的类型

转载 作者:行者123 更新时间:2023-11-29 11:45:48 36 4
gpt4 key购买 nike

什么是“正确”的转换方式

string(5) "-2,23"

我可以在 DECIMAL(5,2) Mysql 列中插入一个值?

我尝试过转换为 float、floatval 等...它们似乎都没有保留小数。

是因为逗号吗?我可以用“.”来str_replace它。如果需要但不愿意,我可能会遇到类似 "-1.200,23"

的值

最佳答案

是的,逗号错了。

你可以这样插入

CREATE TABLE `testdec` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`d` decimal(5,2) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `testdec` (`id`, `d`)
VALUES
(1, -2.23);

或者将逗号更改为点

INSERT INTO `testdec` (`id`, `d`)
VALUES
(2, REPLACE("-2,23",",","."));

但是要小心。仅当字符串中没有其他点(如“1.000,12”)时,此方法才有效。

如果字符串中可以有点,请执行以下操作:首先删除点,然后将逗号更改为点

SELECT REPLACE( REPLACE("-456.123,23",".","") ,",",".") ;

关于mysql - 将具有负值和小数的字符串转换为正确的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34973853/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com