当我尝试合计价格时,返回值将被截断并截断有效值。例如,当我使用sum()或total()汇总价格时,它返回的不是122,000.00,而是12。
我同时使用了sum()和total(),并尝试将数字强制转换为浮点数。该列的类型为REAL。
select "Extended Price"
from ReqData
where "PR ID" = 11111111
group by "PR ID";
这将返回12,000.00
select sum("Extended Price")
from ReqData
where "PR ID" = 11111111
group by "PR ID";
这将返回12。
答案 0 :(得分:0)
问题是您插入了列的值,例如:
12,000.00
这在SQLite中被识别为TEXT
,因为它包含逗号。
将该值更改为:
12000
或
12000.00
当使用TEXT值执行算术运算(例如加,减或什至比较)时,SQLite会尝试将其转换为从起始字符开始的数字,如果完全不可能,它将返回0
。 br />
因此'12a'
将转换为12
,'abc'
将转换为0
,因此在您的情况下,'12,000.00'
将转换为12
。