gpt4 book ai didi

MySQL SUM 长文本字段 $1.000.00 作为 1000

转载 作者:行者123 更新时间:2023-11-30 21:41:24 25 4
gpt4 key购买 nike

我有一个类型为 longtext 的列 meta_entry,其中有两个条目 $1.000.00$54.00< br/>当我运行 SUM(SUBSTRING(meta_value, 2)) 我得到 55 因为它不会将第一个条目读取为 1000 而是读取它作为 1 因为 .1
之后我如何编写一个忽略句点的查询,同时仍将句点保留在数字末尾(美分之前)?

最佳答案

给定:

mysql> select * from stuff;
+------------+
| meta_entry |
+------------+
| $1.000.00 |
| $54.00 |
+------------+
2 rows in set (0.00 sec)

以下查询产生:

mysql> select sum(replace(substring(meta_entry, 2), '.', '')) / 100 from stuff;
+-------------------------------------------------------+
| sum(replace(substring(meta_entry, 2), '.', '')) / 100 |
+-------------------------------------------------------+
| 1054 |
+-------------------------------------------------------+
1 row in set (0.00 sec)

当然,如果你必须在最后有那些美分,你需要更多,在这种情况下,这个又大又长又丑的东西会满足你的需要:

mysql> select format(cast(sum(replace(substring(meta_entry, 2), '.', '')) as decimal) / 100, 2) as sum from stuff;
+----------+
| sum |
+----------+
| 1,054.00 |
+----------+
1 row in set (0.00 sec)

关于MySQL SUM 长文本字段 $1.000.00 作为 1000,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51345104/

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