gpt4 book ai didi

mysql - 如何从带有逗号(,)的varchar中获取总和

转载 作者:行者123 更新时间:2023-11-29 00:07:05 25 4
gpt4 key购买 nike

我想从带逗号的 varchar 中获取总和

这是我的示例表,注意:price = varchar

   +-------+
| price |
+-------+
| 4,500 |
| 1,500 |
+-------+

我的输出和查询是:

Select sum(cast(replace(price, ',', '.') as decimal(18,2))) 
FROM sample.inventory;

+-------+
| price |
+-------+
| 6.00 |
+-------+

我的预期输出应该是这样的:

   +-------+
| price |
+-------+
| 6,000 |
+-------+

最佳答案

MySQL 会自动为您转换字符串编号。

SELECT SUM(replace(price, ',', ''))
FROM sample.inventory

DEMO

但是,你不应该像这样存储数字......

我会将您的价格列中的所有逗号替换为空字符串,使其成为常规数字,然后更改您的表格。

ALTER TABLE sample.inventory
MODIFY price INTEGER

编辑:

如果你必须在结果中有逗号(即使你不应该),那么只需用 FORMAT() 把它包起来

SELECT FORMAT(SUM(replace(price, ',', '')), 0)
FROM sample.inventory

FORMATTED DEMO

关于mysql - 如何从带有逗号(,)的varchar中获取总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27029815/

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