0
Ist es möglich, mehrere Felder mehrerer Zeilen mit einer Unterabfrage zu aktualisieren?Mehrere Felder mehrerer Zeilen mit Unterabfrage aktualisieren
cdu_user_progress:
------------------------------------------
|id |lesson_id |game_id |score |duration |
------------------------------------------
|1 |1 |0 |50 |2500 |
|1 |1 |1 |75 |2500 |
|1 |2 |0 |0 |10000 |
|1 |3 |0 |25 |1000 |
|1 |3 |1 |25 |40000 |
|1 |3 |2 |90 |3000 |
|1 |4 |0 |50 |5000 |
------------------------------------------
cdu_user_progress2
------------------------------------------
|id |lesson_id |game_id |score |duration |
------------------------------------------
|1 |1 |0 |0 |0 |
|1 |1 |1 |0 |0 |
|1 |2 |0 |0 |0 |
|1 |3 |0 |0 |0 |
|1 |3 |1 |0 |0 |
|1 |3 |2 |0 |0 |
|1 |4 |0 |0 |0 |
------------------------------------------
Vielleicht so etwas wie das?
UPDATE cdu_user_progress2
SET
score = sq.score,
duration = sq.duration
FROM (
SELECT
up.lesson_id AS lesson_id,
up.game_id AS game_id,
up.score AS score,
up.duration AS duration
FROM
cdu_user_progress up
) sq
WHERE
lesson_id = sq.lesson_id AND
game_id = sq.game_id
Ich habe die Tabellen und Abfragen für den Zweck dieser Stelle vereinfacht, aber das Prinzip ist das gleiche ...
Jede Hilfe dankbar!