Ik heb al gezocht op het forum en ik kon niets hierover vinden en ik kom er niet uit. Ik wil het aantal nieuwe berichten in forum discussies bepalen, sinds de bezoeker er voor het laatst geweest is.
Ik heb de volgende tabellen:
forum_bericht
------------------
ID int(10) auto_increment
Verband int(10)
Lid int(10)
Datum datetime
Discussie int(10)
Bericht text
Moderatie tinyint(3)
Moderatie_Lid int(10)
Moderatie_Notitie
Gewijzigd_Lid int(10)
Gewijzigd_Datum datetime
laatstbezocht
------------------
Lid int(10)
Onderdeel enum('gastenboek', 'forum', 'agenda', 'peiling', 'login', 'betaforum')
ID1 int(10)
ID2 int(10)
ID3 int(10)
Datum timestamp(14)
forum_discussie
------------------
ID int(10) auto_increment
Lid int(10)
Datum timestamp(14)
Titel tinytext
Moderatie tinyint(3)
Moderatie_Lid int(10)
Moderatie_Notitie tinytext
Verband int(10)
Ik wil ongeveer dit, alleen dan ook met resultaten waarbij er nog geen entrie in de tabel laatstbezocht bestaat:
SELECT MAX(forum_bericht.Datum) AS laatsteberichtdatum, forum_discussie.Titel, COUNT( * ) AS aantal
FROM laatstbezocht, forum_bericht, forum_discussie
WHERE forum_bericht.Datum > laatstbezocht.Datum AND forum_bericht.Discussie = forum_discussie.ID AND laatstbezocht.ID1 =501 AND laatstbezocht.ID2 = forum_discussie.ID AND laatstbezocht.Onderdeel = \'forum\' AND laatstbezocht.Lid = 2878
GROUP BY forum_discussie.ID
ORDER BY MAX(forum_bericht.Datum)
Wie heeft een goed idee om dit efficient op te lossen?
Ik heb de volgende tabellen:
forum_bericht
------------------
ID int(10) auto_increment
Verband int(10)
Lid int(10)
Datum datetime
Discussie int(10)
Bericht text
Moderatie tinyint(3)
Moderatie_Lid int(10)
Moderatie_Notitie
Gewijzigd_Lid int(10)
Gewijzigd_Datum datetime
laatstbezocht
------------------
Lid int(10)
Onderdeel enum('gastenboek', 'forum', 'agenda', 'peiling', 'login', 'betaforum')
ID1 int(10)
ID2 int(10)
ID3 int(10)
Datum timestamp(14)
forum_discussie
------------------
ID int(10) auto_increment
Lid int(10)
Datum timestamp(14)
Titel tinytext
Moderatie tinyint(3)
Moderatie_Lid int(10)
Moderatie_Notitie tinytext
Verband int(10)
Ik wil ongeveer dit, alleen dan ook met resultaten waarbij er nog geen entrie in de tabel laatstbezocht bestaat:
SELECT MAX(forum_bericht.Datum) AS laatsteberichtdatum, forum_discussie.Titel, COUNT( * ) AS aantal
FROM laatstbezocht, forum_bericht, forum_discussie
WHERE forum_bericht.Datum > laatstbezocht.Datum AND forum_bericht.Discussie = forum_discussie.ID AND laatstbezocht.ID1 =501 AND laatstbezocht.ID2 = forum_discussie.ID AND laatstbezocht.Onderdeel = \'forum\' AND laatstbezocht.Lid = 2878
GROUP BY forum_discussie.ID
ORDER BY MAX(forum_bericht.Datum)
Wie heeft een goed idee om dit efficient op te lossen?