Я играю с 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_id] => 1
[building_name] => тестовое здание
[address1] => 123456)
stdClass Object (
[имя_организации] => Это пример организации
[organisation_id] => 1
[building_name] => teeeest building
[address1] => 123456)
Полагаю, я ожидал чего-то по линии одного возвращаемого объекта с рядом вложенных объектов для связанных зданий. Это возможно?
Если нет, то являются ли они рекомендуемым способом упорядочения возвращаемых данных, чтобы я мог легко просматривать их в представлении? (foreach org, foreach building и т. д.).
Прошу прощения, если я буду немного дремучим здесь. Я иду из .net и (в частности, из linq в SQL), где это немного отличается)