使用CodeIgniter从mysql数据库中的随机记录

2022-08-30 14:22:28

我通过互联网进行了研究,但找不到任何东西...

我有一个mysql数据库,并在一个表上记录,我需要在每次页面加载时从这个表中获取随机记录。我该怎么做?这有什么乐趣吗?

欣赏!谢谢


排序: 链接: http://www.derekallard.com/blog/post/ordering-database-results-by-random-in-codeigniter/

$this->db->select('name');
$query = $this->db->get('table');
$shuffled_query = $query->result_array();
shuffle ($shuffled_query);

foreach ($shuffled_query as $row) {
    echo $row['name'] . '<br />';
}

答案 1

Codeigniter 提供了在运行查询时按“RANDOM”对结果进行排序的功能。例如

function get_random_page()
{
    $this->db->order_by('id', 'RANDOM');
    or
    $this->db->order_by('rand()');
    $this->db->limit(1);
    $query = $this->db->get('pages');
    return $query->result_array();

}

我以前用过这个,发现它工作正常。希望有所帮助


答案 2

我不知道codeigniter,但获得一个随机数据集是

SELECT * FROM table ORDER BY RAND() LIMIT 1

显然,相关部分是“”。ORDER BY RAND()


推荐