大shen求解,为啥我这个会算不出来,答案根本不对
大shen求解,为啥我这个会算不出来,答案根本不对
大shen求解,为啥我这个会算不出来,答案根本不对
语句应该没啥问题,数据问题吧。。
问题确定,"销售金额"列数据类型不应位int,你数据表设计的不科学,money类型可以。
如果非要用int的话,也可以的,1.0。不用类型转换。int/int=int*
select tyear 年
, tmonth 月份
, sale_money 销售
, lag(sale_money) over (order by tyear,tmonth) 上月
, sale_money / lag(sale_money) over (order by tyear,tmonth) - 1 环比
, 2 / 3 问题
, 2 * 1.0 / 3 可以解决
from test3
可能是小数点被丢掉了。建议在分子部分 * 100 ,这样计算出来的数据,就是小数点后两位了,可以直接加上百分号了。
首先上月为null和0的改为1
这个没问题,你可以自己造两个没有问题的数据试试
先查询你需要计算的数据作为临时表,然后再包一层就行了
数据类型错了
很遗憾,根据提供的参考资料,无法确定具体的解决方案。查询语句无法得出正确答案的原因可能有很多种可能性,需要进一步的信息和排查来确定问题所在。可能需要检查数据库连接是否正确,查询语句是否有错误,以及数据库中数据的正确性等等。建议更加具体地描述问题并提供更多细节信息,以便给出更准确的解决方案。