2017-08-11 132 views
0

我正在从大型数据库(150K +行)中绘制数据,并且某些数据点具有相同的具有不同价格值的时间戳。SQL查询中的DISTINCT日期时间

例如:

time => 1502050000 
price => 1 

time => 1502050000 // identical timestamp 
price => 1.1 

在SQL查询,我想忽略重复时间戳。我发现DISTINCT可能会完成这项工作,但我坚持将它应用于我的数据库中的日期时间字段。这是我工作的SQL查询,其中拉重复时间戳。

SELECT time, price FROM price_table WHERE time >= '" . $data_from . "' ORDER BY time ASC 

我的目标是获得唯一的时间戳,并避免查询重复。

+0

但是,这似乎很明显,价格是不同的。 – Strawberry

+0

如果你在同一个日期时间有两个不同的价格,你有两行.. – scaisEdge

+0

我欣赏评论家伙,但我期待着只为独特的时间戳过滤,无论价格是不同的。 – Nick

回答

3

可以使用聚合:

SELECT time, MIN(price) as price 
FROM price_table 
WHERE time >= '" . $data_from . "' 
GROUP BY time 
ORDER BY time ASC; 

当然,这回避了你想要什么price时有重复的问题。

+0

为了简单起见,我会记录第一笔记录的价格。我会尝试你的建议。 – Nick