首页 > 解决方案 > 如果多个记录在单个 ID 上,如何获取单个记录?

问题描述

在这张图片中,5 条记录的 id 为 80,但是当我获取它们时它们都来了,但我只想显示一条记录。

在此处输入图像描述

我的休息代码在下面

$data['query7'] = $this->ORB_Model->get_skilldash();

public function get_skilldash()
    {
        $this->load->database('orb');
        //$this->db->distinct('master_id');
        $query = $this->db->get_where('skills_tb', array('master_id' => $this->session->userdata('master_id')));    
        return $query->result();    
    }

标签: phpmysqlcodeignitercodeigniter-3

解决方案


使用$query->row()代替$query->result();

public function get_skilldash()
{
    $this->load->database('orb');
    $master_id = $this->session->userdata('master_id');
    $query = $this->db->get_where('skills_tb', array('master_id' =>$master_id));    
    return $query->row();    
}

如果要返回特定行,可以将行号作为第一个参数中的数字提交:

$row = $query->row(3);

或者只需 $this->db->distinct();像这样使用它:

$this->load->database('orb');
$this->db->distinct();
$master_id = $this->session->userdata('master_id');
$query = $this->db->get_where('skills_tb', array('master_id' => $master_id));    
return $query->row();  

更多信息:https ://www.codeigniter.com/user_guide/database/results.html#result-rows


推荐阅读