Я знаю, что это старый вопрос, но в любом случае я отвечу на него всем, кто столкнется с такой же проблемой в будущем.
вам нужно использовать запрос JOIN для соединения нескольких таблиц с использованием отношения первичного и внешнего ключей.
Код для получения всех записей
$q = $this->db
->select()
->from('Note AS n')
->join('Note_Tag_list AS n_t_l', 'n_t_l.Note_id = n.id', 'left')
->join('Tag AS t', 't.id = n_t_l.Tag_id', 'left')
->get();
Код для получения только определенных записей (с помощью предложения WHERE)
$where = array(
'n.id' => **provide note id here**
);
$q = $this->db
->select()
->from('Note AS n')
->join('Note_Tag_list AS n_t_l', 'n_t_l.Note_id = n.id', 'left')
->join('Tag AS t', 't.id = n_t_l.Tag_id', 'left')
->where($where)
->get();
Для получения дополнительной информации ознакомьтесь с документами codeigniter.
Конструктор запросов Codeigniter