Benutzertabelle:
Benutzer-ID-Name E-Mail-Telefon Passwort Rolle
38 Asif ---- ---- ---- ---
39 Anil ---- ---- ---- ---
Wohnungstabelle:
Wohnungs-ID-Block Wohnungsnummer Eigentümer-ID Bereichsrate
1 B B101 38 --- ---
2 A A101 39 --- ---
Zahlungstabelle:
pay_id flat_id Monat_von Monat_bis Betrag Datum
1 1 ------ ------ ---- ---
2 2 ------ ------ ---- ---
28 1 ------ ------ ---- ---
Wenn ich diese Tabelle mit diesem Code verbinde:
Code: Select all
$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 Asif 5. September 2020 ----
A101 Anil 5. Okt. 2020 ----
B101 Asif 5. Okt. 2020 ----
Das Problem ist Ich erhalte einen doppelten Datensatz des Benutzers Asif, das sind drei Datensätze. Ich möchte jedoch nur zwei Datensätze, da es nur zwei Benutzer gibt. Das heißt, ich möchte, dass die Anzahl der Ergebnisse den Datensätzen in der Benutzertabelle entspricht und keine Duplikate vorhanden sind.
Bitte schlagen Sie mir eine Lösung vor, um das zu erreichen ...
Mobile version