Codeigniter 3 работает на варианте сервера PHP 5. Использование построителя запросов для работы с базой данных.
Предпосылка:
Создание программного обеспечения с профилем клиента. Пользователи могут добавлять в профиль несколько заметок и привязывать к этой заметке контакт. Затем профиль отображает все заметки и контакт в соответствующем профиле с помощью метода join() из построителя запросов Codeigniter 3.
Проблема:
Примечание можно добавить без контакта с клиентом, в случае обобщенного примечания. Это устанавливает значение по умолчанию NULL в БД, что, в свою очередь, не позволяет client_model возвращать примечания, поскольку он не может объединить таблицы.
Текущий код:
Код: Выделить всё
function get_client_notes($client_id)
{
$this->db->join('nh_note_types', 'nh_note_types.type_id = nh_client_notes.client_notes_type');
$this->db->join('nh_user_profiles', 'nh_user_profiles.user_profile_user_id = nh_client_notes.client_notes_added_by');
$this->db->join('nh_client_contacts', 'nh_client_contacts.client_contact_id = nh_client_notes.client_notes_client_contact_id');
$this->db->order_by("client_notes_added_date", "desc");
$query = $this->db->get_where('nh_client_notes', array('client_notes_client_id' => $client_id));
return $query;
}
Я пытаюсь выяснить, есть ли способ сделать следующее:
ЕСЛИ client_notes_client_contact_id не равно нулю, тогда соедините таблицы, иначе продолжайте прошлое.
Или любой другой способ объединения таблиц, если есть значение и где оно равно NULL, тогда не присоединяйтесь.
Любая помощь приветствуется!
Подробнее здесь: https://stackoverflow.com/questions/361 ... equal-null
Мобильная версия