naivefang
- naivefang 2016-10-10 已签到连续签到4天,获得了20个金钱
- naivefang 2016-10-09 已签到连续签到3天,获得了15个金钱
- naivefang 2016-10-08 已签到连续签到2天,获得了10个金钱
- naivefang 2016-10-07 已签到连续签到1天,获得了5个金钱
- naivefang 2016-09-30 已签到连续签到5天,获得了20个金钱
- naivefang 2016-09-29 已签到连续签到4天,获得了20个金钱
- naivefang 回答了问题 行为 会自动开启事务吗?
默认不会,除非你重写了 ActiveRecord::transactions方法,比如:
public function transactions() { return [ self::SCENARIO_DEFAULT => self::OP_INSERT | self::OP_UPDATE | self::OP_DELETE ]; }
- naivefang 2016-09-28 已签到连续签到3天,获得了15个金钱
- naivefang 赞了回答
1) 采用官方的方式
select * from tb_name order by rand() limit N
2)采用类似偏移方式
select * from tb_name where id >= (select floor(max(id) * rand()) from tb_name ) order by id asc limit N;
3)优化的方式
select * from tb_name as r1 join (select round(rand() * (select max(id) from tb_name)) as id2) as r2 where r1.id >= r2.id2 order by r1.id asc limit N;