【发布时间】:2010-09-19 04:07:07
【问题描述】:
我有一个 SQLite 表,其中包含各种产品的价格。这是一个快照表,因此它包含 5 分钟间隔的价格。我想编写一个查询,返回每件商品从一行到下一行的价格差异。
这些列是 id(汽车公司)、record_id(产品的 id)、价格(当时的价格)、时间(距纪元仅几秒)
我正在尝试返回一个“差异”列,其中包含间隔之间的差异值。
鉴于以下 id record_id 价格时间 1 苹果001 36.00 ... 67 苹果001 37.87 ... 765 苹果001 45.82 ... 892 苹果001 26.76 ... 我希望它返回 id record_id 价格时差 1 苹果001 36.00 ... 0 67 苹果001 37.87 ... 1.87 765 苹果001 45.82 ... 7.95 892 苹果001 26.76 ... -19.06SQLite 可以吗?
其次,是否有可能 - 有没有办法将其限制为最后 5 条左右的记录?
如果有任何帮助,我将不胜感激,谢谢。
只是想添加一些东西。我在其他数据库中找到了这样做的方法,但我使用的是 XULRunner,因此使用的是 SQLite。这就是我改用它的原因。
第二个问题可能需要澄清,我希望按时间订购并分析最后 5 条记录。如果需要,我可以单独解决这个问题。
这是一个 MySQL solution,有点像。这是我正在走向的方法,但交易破坏者是“如果表包含序列列但存在间隙,请重新编号。如果表不包含这样的列,请添加一个”。根据设计,这种情况存在差距,因为一次更新了许多记录并且不会按顺序进行。
【问题讨论】:
标签: sql sqlite limit xulrunner