Ich versuche, einen Verwendungsbericht auszuführen. Grundsätzlich gibt es eine Transaktionsprotokolltabelle, die jede Aktion aufzeichnet, die von der Website gegen die Datenbank ausgeführt wird.Mehrere Joins mit Count auf derselben Tabelle
Ich habe drei Tabellen:
**organization:**
id
name
**people:**
id
organization_id
**transaction_log:**
id
people_id
table
action
wir nun an, ich 4 weitere Tabellen, die Benutzer erstellen Datensätze, die wie dies in der transaction_log aussehen:
{id: 1, people_id: 33, table: "tablea", action: "create"}
{id: 2, people_id: 44, table: "tableb", action: "create"}
Was ich wollen: Ich möchte ein Ergebnis, das in etwa so aussieht:
{organization_id: 1, name: "some org", tbla_count: 2000, tblb_count: 3000},
{organization_id: 2, name: "other org", tbla_count: 100, tblb_count:100}
Momentan mache ich diese eine Abfrage auf einmal (eine für jede Tabelle), aber wir haben viel mehr als 4 Tabellen, also wäre es schön, wenn ich es auf einmal laufen lassen könnte. Hier ist, was ich bereits habe:
Wenn ich versuche, nur einen weiteren linken Join hinzuzufügen, kommen die Zahlen falsch. Ich habe das getan: