Dies sind die beiden Tabellen I zur Hand haben,benötigen aus einer Tabelle neuesten Instanzen eines Benutzers abzurufen
Herausforderungen
id | Name
Challenges_Users
user_id | challenge_id | gestartete_at | completed_at
jede Instanz in der challenges_users Tabelle ist eine Aufzeichnung der Benutzer eine Herausforderung und ihren Zustand (Staat auf der Grundlage der started_at und completed_at Zeitstempel)
auch zu akzeptieren, kann ein Benutzer mehrere Male eine Herausforderung annehmen (nicht gleichzeitig , aber kann es wieder nehmen, nachdem die erste Instanz abgeschlossen ist). So könnte die Tabelle für eine einzelne Herausforderung wie folgt aussehen.
id | challenge_id | gestarted_at | completed_at
2831 | 4 | 2010-12-23 00:00:00 | 2010-12-29 15:42:41
2834 | 4 | 2010-12-29 15:46:53 | NULL
Jetzt muss ich die Liste aller Herausforderungen aus der Challenges-Tabelle und ihren Status der neuesten Instanz aus der Challenges_users-Tabelle abrufen.
Staaten sind: , wenn keine Instanz für eine Herausforderung in challenges_users Tabelle => unstarted wenn completed_at null ist und started_at ist nicht null => läuft wenn completed_at nicht null und started_at ist nicht null =>
abgeschlossenich habe 2 Probleme:
Wie ein einfach zu tun kommen, so dass alle Herausforderungen, die alle Instanzen für einen bestimmten user_id in challeges_users dont haben auch in der Ergebnismenge erhalten.
Wie gebe ich ein Resultset zurück, so dass es nur einen Datensatz mit der neuesten gestarteten_at enthält.
Jede Hilfe wird sehr geschätzt. Vielen Dank! Hier
Welche der drei Staaten sollte in der Ergebnismenge aufgenommen werden? –