从每小时获取三个随机日期

zap*_*dlo 7 mysql random

标题实际上并没有完全描述问题,即:我有一个日期表 -

 1. 2011-07-01 13:01:48
 2. 2011-07-01 13:09:36 
 3. 2011-07-01 13:21:24
 4. 2011-07-01 13:35:12
 5. 2011-07-01 13:49:23
 6. 2011-07-01 13:57:47
 7. 2011-07-01 14:05:12
 8. 2011-07-01 14:12:45
 9. 2011-07-01 14:31:48
 10. 2011-07-01 14:47:31
Run Code Online (Sandbox Code Playgroud)

等等.我需要的是每小时获得三个随机日期,例如:

 1. 2011-07-01 13:01:48
 2. 2011-07-01 13:21:24
 3. 2011-07-01 13:49:23
 4. 2011-07-01 14:05:12
 5. 2011-07-01 14:12:45
 6. 2011-07-01 14:47:31
Run Code Online (Sandbox Code Playgroud)

我怎么能在mysql中做到这一点?

Kar*_*lis 1

如果统计上每小时有足够的行数,这应该会很有效:

select *
from (
    select *
    from yourtable
    order by rand()
)
group by date(yourdate), hour(yourdate), floor(rand()*3)
Run Code Online (Sandbox Code Playgroud)