gpt4 book ai didi

mysql - MySQL 显示的百分比是否错误?

转载 作者:行者123 更新时间:2023-11-29 21:49:46 25 4
gpt4 key购买 nike

我目前正在尝试获取同一列但日期不同的百分比差异。

这是我当前正在测试的查询:

SELECT     curr.slug,
curr.senaste * 100 / NULLIF(prev.senaste, 0) as percentage
FROM aktier AS curr
INNER JOIN aktier AS prev
ON curr.slug = prev.slug
WHERE date(prev.timestamp) = '2015-11-16'
AND date(curr.timestamp) = CURDATE()
AND curr.slug = 'abb-ltd'

如果我运行此查询,我将得到结果:103.14465408805032

但是,如果我运行查询SELECT senaste FROM aktier WHERE slug = 'abb-ltd'我会得到这两个值:159,4 164,1

当我在计算器上运行 1-(159,4/164,1) 时,我将得到以下结果:0,2864

当前的设置有什么问题吗?并且:我如何从查询中获得显示 2.9% 的结果?

列 senaste 是带有 utf8_unicode_civarchar(5)

SQL-fiddle:http://sqlfiddle.com/#!9/8a859

最佳答案

您的列 senaste 是一个 VARCHAR(5),其中包含 '159,4' 等数据。 VARCHAR 字段不应该用于存储数字,特别是如果您打算让 MySQL 对这些值运行数学运算。

您应该使用 DECIMAL(10,1) (假设您只需要一个十进制数字),并且您应该在数字格式中使用句点,而不是逗号。 (例如,'159.4')

关于mysql - MySQL 显示的百分比是否错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33763619/

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