Как сгруппировать данные JOINed с отношением «один ко многим» в подмассивы, чтобы избежать дублирования данных родительсPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как сгруппировать данные JOINed с отношением «один ко многим» в подмассивы, чтобы избежать дублирования данных родительс

Сообщение Anonymous »

Я экспериментирую с CodeIgniter и пытаюсь разобраться в системе построения запросов.
Я настроил пару таблиц и пытаюсь выполнить к ним соединение, как таковое:

Код: Выделить всё

function GetOrganisationsAndBuildingDetails()
{
$this->db->select('
organisations.organisation_name,
organisations.organisation_id,
buildings.building_name,
buildings.address1
');
$this->db
->from('organisations')
->join('buildings', 'buildings.organisation_id = organisations.organisation_id');
$query = $this->db->get();
return $query->result();
}
В моей базе данных есть одна организация с двумя связанными зданиями. Приведенный выше запрос возвращает два объекта (по одному на каждое здание), однако организация дублируется.
  • stdClass Object (
    [organisation_name] => Это пример org
    [organisation_id] => 1
    [building_name] => тестовое здание
    [address1] => 123456 )
  • Объект stdClass (
    [organisation_name] => Это пример org
    [organisation_id] => 1
    [building_name] => самое лучшее здание
    [address1] => 123456 )
Полагаю, я ожидал чего-то вроде одного возвращаемого объекта с серией вложенные объекты для связанных зданий. Возможно ли это?
Если нет, то является ли рекомендуемый способ упорядочить возвращаемые данные, чтобы я мог легко просмотреть их в представлении? (организация foreach, здание foreach и т. д. и т. п.).
Извиняюсь, если я немного туповат. Я исхожу из .net и (в частности, из linq to SQL), где все немного по-другому).

Подробнее здесь: https://stackoverflow.com/questions/195 ... s-to-avoid
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»