在mysql中用每隔n个点取一个点,相信很大一部分人会用到,我在工作中就遇到了这个问题。
我们用java代码写的话可以用for实现每隔n个点取一个点,但是用for太浪费了,所以只能在sql中完成。我在网上查了很多答案,无果。
最终我想到可以添加一个辅助列对获取的数据进行排序,然后用辅助列 % (间隔点+1)=0 的方式去实现。
下面代码展示,现有数据表table,有字段name,age等,假定间隔点为n,辅助排序列为xh。

这段代码就可以实现添加辅助排序列,再进行每隔n个点取一个点
在mysql中用每隔n个点取一个点,相信很大一部分人会用到,我在工作中就遇到了这个问题。
我们用java代码写的话可以用for实现每隔n个点取一个点,但是用for太浪费了,所以只能在sql中完成。我在网上查了很多答案,无果。
最终我想到可以添加一个辅助列对获取的数据进行排序,然后用辅助列 % (间隔点+1)=0 的方式去实现。
下面代码展示,现有数据表table,有字段name,age等,假定间隔点为n,辅助排序列为xh。
这段代码就可以实现添加辅助排序列,再进行每隔n个点取一个点