Codeigniter Join Если значение не NULL - PullRequest
0 голосов
/ 30 октября 2018

Мне нужен код, который, если я нашел данные поля, я хочу присоединить эти конкретные данные к другой таблице.

    $this->db->select('*');
    $this->db->from('userprofile');
    $this->db->where('userId', $userId);
    $this->db->where('status', 1);
    $this->db->join('bodytype', 'bodytype.bodyTypeId = userprofile.bodyType');
    $this->db->join('children', 'children.childrenId = userprofile.children');
    $this->db->join('ethnticity', 'ethnticity.ethnticityId = userprofile.ethnicity');
    $this->db->join('smoke', 'smoke.smokeId = userprofile.smoke');
    $this->db->join('drink', 'drink.drinkId = userprofile.drink');
    $query = $this->db->get();
    return $query->result();

Если я получил userprofile.bodyType, то запускался запрос на присоединение bodytype. Есть ли способ справиться с этим?

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Попробуйте INNER JOIN:

$this->db->join('bodytype', 'bodytype.bodyTypeId = userprofile.bodyType','inner');
0 голосов
/ 30 октября 2018

из этого стека: Значение не равно NULL в codeigniter

добавить это предложение where для запроса

$this->db->where('bodyType is NOT NULL', NULL, FALSE);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...