У меня проблема с соединением Mysql. У меня две таблицы, таблица center_contacts
и center_contacts_notes
. center_contacts_notes
связаны через contact_id
, который находится в обеих таблицах.Объединение результатов Mysql Присоединиться
Внутри center_contacts_notes
может быть несколько строк на contact_id
, и я хочу взять их все и поместить в подвале массива результатов.
К примеру, вот что мой center_contacts_notes
таблица выглядит следующим образом:
contact_id | note
------------------------
1 test
2 hello
3 sup
1 moo
Вот где я пытаюсь захватить данные:
$this->db->select('center_contacts.id, FirstName, LastName, center_contacts_notes.note');
$this->db->from('center_contacts');
$this->db->join('center_contacts_notes', 'center_contacts_notes.contact_id = center_contacts.id');
Обратите внимание, что я использую Codeigniter 3.
Вот что я получаю от этого:
Array
(
[id] => 1
[FirstName] => Bob
[LastName] => Smith
[note] => test
)
Array
(
[id] => 1
[FirstName] => Bob
[LastName] => Smith
[note] => moo
)
Это два разных массива внутри моих результатов. Это нецелесообразно для моего использования, поскольку мне нужен один массив, содержащий две заметки. Что-то вроде этого:
Array
(
[id] => 1
[FirstName] => Bob
[LastName] => Smith
[note] => Array(test, moo)
)
Возможно ли это, и если да, то как бы я его выполнил? Благодарю.
Вы пробовали GROUP_CONCAT() – anju