读书人

SQLite 怎么均匀乱序

发布时间: 2012-02-20 21:18:23 作者: rapoo

SQLite 如何均匀乱序?
SQLite 如何均匀乱序?

如下面的记录:

AAA
AAA
AAA
BBB
BBB
BBB
CCC
CCC
DDD
DDD
EEE
EEE
FFF
FFF

要求结果如下:

AAA
BBB
CCC
DDD
EEE
FFF
AAA
BBB
CCC
DDD
EEE
FFF
AAA
BBB

记录中每个重复项的数量应该是不相同的,要求最大限度均匀分布在查询结果集里。。。
举个例子,一个市的考生考试,最好把不同学校的考生均匀分布在不同的考场,每个学校的考生的数量是不一样的。。。

[解决办法]
select * from table order by random()
[解决办法]

探讨
引用:

用你上述数据,加入自增字段ID,字段名为ZZ
select * from (
select a.zz,a.id,count(b.id) as bz from aa3 a left join aa3 b on a.zz=b.zz and a.id>=b.id group by
a.zz,a.id) a order by bz,zz


这个可以达……

读书人网 >其他数据库

热点推荐