1

我想进行一个活动记录查询,以获取 parent_id 等于 $parent_id的列顺序的最大值。

到目前为止,我有这个:

function get_biggest_order($parent_id)
    {
        $result = 0;
        if(!empty($parent_id)) 
        {
            $this->db->where('parent_id', $parent_id);
            $result = $this->db->get('pages');
        }
        return $result;
    }

但是正如你所看到的,我得到了所有行,而不仅仅是订单列具有最大值的行,例如 14。

怎么做?

我在想类似的事情:

$this->db->where('parent_id', $parent_id);
$this->db->where('order', something is the biggest);
$result = $this->db->get('pages');
4

2 回答 2

1

你必须使用order_by

$this->db->where('parent_id', $parent_id);
$this->db->order_by('order', 'desc');
$this->db->limit(1);
$result = $this->db->get('pages')->row();
于 2013-03-12T13:49:29.230 回答
1

select_max()方法是您应该使用的方法。更快,更不言自明。

于 2013-03-13T06:48:42.257 回答