繁体   English   中英

Ruby / Rails:将分组总和日期列转换为Unix时间

[英]Ruby/Rails: Convert a grouped-sum date column into a Unix time

我正在尝试将日期从“ YYYY-MM-DD”格式转换为Unix时间。

我正在运行此代码以获取分组总和:

Invoice.group('date(filled_at)').sum(:lines_price).to_a

哪个返回:

[["2012-12-15", #<BigDecimal:b451450,'0.19275E4',18(45)>], ["2012-12-17", #<BigDecimal:b45107c,'0.764235E3',18(45)>]]

问题是我需要将这些数据放入接受这种格式的图表中:

[
  [1341014400000, 123.5],
  [1341018000000, 150.3],
  ...
]

如何将数组转换为图表可接受的格式?

如果可以解析,转换起来应该不会太困难:

Invoice.group('date(filled_at)').sum(:lines_price).to_a.collect do |date, sum|
  [ DateTime.parse(date).to_i, sum.to_f ]
end

BigDecimal只是在Ruby中通过正确处理定点值来表示NUMERIC SQL类型的一种方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM