我在数据库中有两列:如何选择一列上不同,而返回其他列
Value | Date
---------------------
1.3 | 1410374280000
值是float和时间以毫秒为单位的时代整数
我试图优化这个查询会返回几千行。
SELECT * FROM data WHERE date >= [some_time_in_the_past]
由于我在前端渲染图表,我需要的数据点少得多。所以我截断日期。
SELECT data.date/5000 * 5000 AS truncated, data.price FROM data
WHERE date >= [some_time_in_the_past]
这上面将日期截断为每5秒。所以现在我想SELECT DISTINCT
就可以了。
但是:
SELECT DISTINCT truncated, price
这将选择双方的truncated_date以及价格DISTINCT。有没有办法在截断日期只选择DISTINCT并获取价格列。
首先你显示一个名为'Value'的列表,然后继续一个名为'price'的列?同样''也得到价格栏''没有定义你想要的。显然,你想要将具有相同截断时间戳的行集合合并为一个。您必须定义*从该集合中选择哪个*价格。第一,最后,平均,随机,随意选择? – 2014-09-23 04:09:29