Группируйте результаты запроса CodeIgniter и создайте подмассив значений для каждой группы.Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Группируйте результаты запроса CodeIgniter и создайте подмассив значений для каждой группы.

Сообщение Anonymous »

Я использую Codeigniter, мне нужен запрос, который возвращает пользователей по группам.
В группе может быть один или несколько пользователей, вот примеры таблиц:

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

groups table        users table              users_by_groups table
id                  id                    id_group   id_user
1                   10                      1          10
2                   11                      1          11
3                   12                      1          12
2          11
3          12
запрос, который я сделал:

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

public function getUsersByGroup()
{
$this->db->select('g.vgro_name,u.vusr_user');
$this->db->from('vts_user_by_group b');
$this->db->join('vts_groups g', 'b.vubg_vgro_id = g.vgro_id');
$this->db->join('vts_users u', 'b.vubg_vusr_id = u.vusr_id');
$this->db->group_by('g.vgro_name,vusr_user');
// $this->db->order_by('u.vusr_user','asc');
$query = $this->db->get();
return $query->result();
}
что это возвращает:

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

0 =>
object(stdClass)[28]
public 'vgro_name' => string 'GROUP1' (length=4)
public 'vusr_user' => string 'john' (length=9)
1 =>
object(stdClass)[29]
public 'vgro_name' => string 'GROUP1' (length=4)
public 'vusr_user' => string 'alice' (length=4)
2 =>
object(stdClass)[30]
public 'vgro_name' => string 'GROUP2' (length=3)
public 'vusr_user' => string 'mark' (length=3)
а это не то, чего я хочу. Я притворяюсь, например:

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

 0 =>
object(stdClass)[31]
public 'vgro_name' => string 'GROUP1' (length=7)
public 'vusr_user' => string 'john' (length=7)
public 'vusr_user' => string 'alice' (length=7)

2 =>
object(stdClass)[30]
public 'vgro_name' => string 'GROUP2' (length=3)
public 'vusr_user' => string 'mark' (length=3)
Что я делаю не так?

Подробнее здесь: https://stackoverflow.com/questions/302 ... -per-group
Ответить

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

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

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

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

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