私のコードでは、テーブルを検索して 1 つのテーブルからいくつかのものを返すことしかできませんが、投稿された値の姓から「emp_no」を取得して、「dept_emp」から「dept_no」を、「title」から「title」を返すにはどうすればよいですか? 「タイトル」?
コントローラー
public function findemp()
{
// search in table 'employees'
$name = $this->input->get('lastname');
if($data['user'] = $this->fndmodel->finduser($name)) {
$this->load->view('searchview', $data);
}
// search in table 'dept_emp'
$dept = $this->input->get('deptmnt');
// search in table 'titles'
$title = $this->input->get('title');
}
モデル
public function finduser($name) {
if ($name == null || $name == '') {
return false;
}
$this->db->select('e.emp_no, e.first_name, e.last_name, t.title, d.dept_no');
$this->db->from('employees AS e, titles AS t, dept_emp AS d');
$this->db->where('e.emp_no = t.emp_no');
$this->db->where('e.emp_no = d.emp_no');
$this->db->where('e.last_name', $name);
$data['query'] = $this->db->get();
return $data;
}
これは私がアクティブレコードで望むものです
SELECT e.emp_no, e.first_name, e.last_name, t.title, d.dept_no
FROM employees e JOIN titles t
ON (e.emp_no = t.emp_no)
JOIN dept_emp d
ON (e.emp_no = d.emp_no)
WHERE e.last_name = "facello";
これは正しいですか?
$this->db->select('e.emp_no, e.first_name, e.last_name, t.title, d.dept_no');
$this->db->from('employees AS e, titles AS t, dept_emp AS d');
$this->db->where('e.emp_no = t.emp_no');
$this->db->where('e.emp_no = d.emp_no');
$this->db->where('e.last_name', $name);
$result = $this->db->get();