也许有人可以帮我解决这个问题:
我在数据库中有大量数据。现在我需要在折线图中显示它们。 目前我获得了所有数据,因此图表看起来很糟糕......
问题是:
我怎样才能获得每个第n个数据? 任何SQL查询建议?
答案 0 :(得分:1)
每个第n个数据点都有点棘手。在最新版本的MySQL中,您可以使用row_number()
。我假设你有一个旧版本。我还假设你有一个连续的行ID,所以问题是有道理的。
然后您可以使用变量来枚举行:
select t.*
from (select t.*, (@rn := @rn + 1) as rn
from (select t.* from t order by id) t cross join
(select @rn := 0) params
) t
where mod(rn, <n>) = 1;