我正在使用Kohana 3的ORM模块,当我想从某个表中获取随机行时,在我的代码中应该使用什么查询,而不是显示数据库结果集的第一行?
如果使用MySQL,您可以使用以下代码:
ORM::factory('some_model')->order_by(DB::expr('RAND()'))->find();
SELECT * FROM table LIMIT 1 ORDER BY RAND();
或者使用Kohona查询构建器:
$this->db->from('table')->select('*')->limit(1)->orderby(null, 'RAND()')->get();