Ich habe ein seltsames Problem mit der SQL-Anweisung unten. Die Ergebnisgruppen nach Benutzer-IDs und einige von ihnen gehen richtig aus, aber für eine von ihnen (Benutzer-ID = 1) wird das "initial_average" mit 3 multipliziert. Ich habe wirklich keine Ahnung warum .. Ist etwas nicht in Ordnung mit der Struktur der Erklärung? Wenn es nicht klar ist, besteht das Ziel darin, das Feld "initial_avg" in der Tabelle "tasks" zu summieren und es vom Benutzer ausbrechen zu lassen. Einige Hilfe mit diesem wird sehr geschätzt. Ich benutze MySQL.Inner Join in Kombination mit Summe und Gruppe von
SELECT sum(initial_avg) AS initial_average
, sum(initial_std) AS initial_standard_dev
, tasks.user
, hourly_rate
FROM tasks
INNER JOIN user_project
ON tasks.user=user_project.user
AND tasks.project=59
AND tasks.user=1
GROUP BY tasks.user
Ihre Frage zu aktualisieren und fügen Sie ein richtiges Datenbeispiel – scaisEdge
Ich habe es gerade gelöst, indem ich eine andere "und" -Klausel (AND user_project.project = 59) –
wahrscheinlich sollte gruppieren, indem stündliche_rate. und da Sie einen inneren Join verwenden, sollten die 'und tasks.project = -59 und tasks.user = 1 'wirklich in der' where' Klausel sein. – xQbert