Получаем случайную строку из запроса к базе данных в Kohana 3

StackOverflow https://stackoverflow.com/questions/1956568

Вопрос

Я использую модуль ORM в Kohana 3, и вместо отображения первой строки результирующего набора базы данных, какой запрос мне следует использовать в моем коде, когда я хочу получить случайную строку из определенной таблицы?

Это было полезно?

Решение

Вы можете использовать это (если используете MySQL):

ORM::factory('some_model')->order_by(DB::expr('RAND()'))->find();

Другие советы

Вы можете выполнить запрос напрямую, если вы используете MySQL:

SELECT * FROM table LIMIT 1 ORDER BY RAND();

Или с Конструктор запросов Kohona:

$this->db->from('table')->select('*')->limit(1)->orderby(null, 'RAND()')->get();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top