Таблица пользователей:
user_id имя электронная почта телефон пароль роль
38 Asif ---- ---- ---- ---
39 Anil ---- ---- ---- ---
Таблица Flats:
квартира_id блок квартира_номер владелец_ид площадь
1 Б B101 38 --- ---
2 A A101 39 --- ---
Таблица платежей:
pay_id Flat_id месяца_от месяца до суммы даты
1 1 ------ ------ ---- ---
2 2 ------ ------ ---- ---
28 1 ------ ------ ---- ---
Когда я присоединяюсь к этой таблице с помощью этого кода:
Код: Выделить всё
$db = \Config\Database::connect();
$builder = $db->table('payments p');
$builder->select('*');
$builder->join('flats f', 'f.flat_id = p.flat_id', 'left');
$builder->join('users u', 'u.user_id = f.owner_id', 'left');
$query = $builder->get();
$data['table_joined'] = $query->getResult();
FlatNumber Name PaidUpto LastPaid
B101 Асиф 5 сентября 2020 г. ----
A101 Анил 5 октября 2020 г. ----
B101 Асиф 5 октября 2020 г. ----
Проблема в том, что я получаю одну повторяющуюся запись пользователя Asif, это три записи. Но мне нужны две записи только потому, что есть только два пользователя. Это означает, что я хочу, чтобы количество результатов было равно количеству записей в таблице пользователей и не содержало дубликатов.
Пожалуйста, предложите мне решение, как это сделать...
Подробнее здесь: https://stackoverflow.com/questions/651 ... odeigniter
Мобильная версия