Запрос внутреннего присоединения в codeigniter - PullRequest
0 голосов
/ 22 ноября 2018

код:

public function draft_post($idd)
{
    $this->db->select('*');
    $this->db->from('registration');
    $this->db->join('draft_registration', 'registration.user_id= draft_registration.user_id','INNER');
    $this->db->where('registration.user_id', $idd);
    $query = $this->db->get();
    $result = $query->result_array();
    return $result;
}

В этих кодах у меня есть две таблицы, т.е. registration and draft_registration.Теперь, что я здесь делаю, я хочу запустить внутреннее соединение в Codeigniter.Теперь, что происходит, когда я нажимаю на этот запрос на phpmyadmin, он показывает неверные данные, т.е. у меня есть две строки в draft_registration и одна строка в таблице registration, но он всегда показывает две таблицы, которые неправильны, и мой запрос выглядит, когда ябыл напечатан как упомянуто ниже:

SELECT *
FROM `registration`
INNER JOIN `draft_registration` ON `registration`.`user_id`= `draft_registration`.`user_id`
WHERE `registration`.`user_id` = '20181121064044'

Итак, как я могу решить эту проблему?Пожалуйста, помогите мне.

Спасибо

Ответы [ 3 ]

0 голосов
/ 22 ноября 2018

Укажите столбец, который вы хотите выбрать.Или, если вы хотите выбрать все столбцы таблицы, вы можете использовать:

SELECT registration.* с обратными чертами `` в имени столбца

0 голосов
/ 22 ноября 2018

Используйте код ниже

public function draft_post($idd)
{
$this->db->select('registration.*,draft_registration.*');
$this->db->from('registration');
$this->db->join('draft_registration', 'registration.user_id= draft_registration.user_id');
$this->db->where('registration.user_id', $idd);
$query = $this->db->get();
$result = $query->result_array();
return $result;
}

Или вы можете использовать с объектами

public function draft_post($idd)
{
$this->db->select('a.*,b.*');
$this->db->from('registration a');
$this->db->join('draft_registration b', 'a.user_id= b.user_id');
$this->db->where('a.user_id', $idd);
$query = $this->db->get();
$result = $query->result_array();
return $result;
}
0 голосов
/ 22 ноября 2018
$this->db->select('*'); //This code get all rows from both table.If you want a particular row you mention the column name.

For example:
$this->db->select('registration.name,draft_registration.city,draft_registration.state');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...