Subqueries und innerJoin

Filder

Gesperrt
MYSQL

Hallo ich habe ein Problem mit dem ich einfach nicht alleine fertig werde.

Ich habe zwei Tabellen.


In Tabelle 2
MitgliederIDRef und VariableY = unique

Nun nehme man an ich habe in Tabelle 1

+----tbl1ID---- + MitgliederIDRef---VariableX---VariableZahl
+........1--------+----------1----------------1--------------2-------------------------------------
+------2---------+---------1-----------------1--------------2-------------------------------------
+------3---------+---------2-----------------1--------------2-------------------------------------
+------4---------+----------2----------------1---------------2------------------------------------
+-------------------------------------------------------------------------------------------------


IN Tabelle 2

+----tbl2ID---- +MitgliederIDRef---VariableY---VariableSum
+........1--------+----------1----------------1--------------0
+------2--------+----------1----------------2--------------0
+------3--------+----------2----------------1-------------- 0
+------4--------+----------2----------------2-------------- 0


Nun möchte ich in Tabelle 2 VariableSum updaten.

Ich habe folgenden Query (mit Subquery)

UPDATE tbl2
SET VariableSum = (SELECT sum(tbl1.VariableZahl) as sum
FROM tbl1
WHERE (tbl1.VariableX) = 1 AND (tbl2.VariableY) = 1 AND ((tbl1.MitgliederIDRef) = (tbl2.MitgliederIDRef))

Das Problem ist nun, dass in diesem Beispiel ich keinen InnerJoin habe, sondern die Variable MitgliederIDRef nur über WHERE verbinde.
Die VariableSum wird nun bei den beiden Datensätzen wo VariableY = 1 zwar richtig geändert, dafür werden die anderen Datensätze in NULL geändert.

Ich denke man muss doch auch irgendwie mit Inner Join arbeiten können. Leider finde ich nirgends eine Anleitung dazu.

Bin für jede Hilfe dankbar!
 
Zuletzt bearbeitet:
Zurück