提供参数:起始时间和截止时间
1.先根据时间分组查出在该时间区间内有数据的时间集合;
2.如果查出的时间集合长度不大于10则遍历改时间集合,并显示所有时间点儿的值
3.如果时间集合长度大于10则采用mysql大数据的随机高效查询查出10条数据
SELECT *
FROM `table` AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM `table`)-(SELECT MIN(id) FROM `table`))+(SELECT MIN(id) FROM `table`)) AS id) AS t2
WHERE t1.id >= t2.id
ORDER BY t1.id LIMIT 10;