Seite 1 von 1

suche sql-befehl für nickpage

Verfasst: 16.11.2004 11:03
von klunzen
hallo.
die gästebuch-einträge in meiner nickpage haben belegen mittlerweile eine menge an speicher. suche 2 sql-befehle.

:o mit einem sql-befehl möchte ich nun bei dem user der über hundert einträge hat alle alten löschen bis noch 100 in der datenbank vohanden sind.

ab sofort möchte ich jeden user maximal xx (z.b. 100) einträge gestatten. wenn der 101. eintrag geschieht soll der 1. gelöscht werden, damit dann max 100. einträge vorhanden sind.

:o dafür suche ich auch einen sql-befehl...

thx 4 hlp

Verfasst: 16.11.2004 13:14
von klunzen
warum funzt

Code: Alles auswählen

select * from phpbb_nickpagegb where min (zeit)
nicht?!?

min liefert doch den kleinsten eintrag?!?!

möchte mir den datensatz mit dem ältesten eintrag anzeigen lassen...


dieser befehl liefert nur die kleinste zeit, jedoch nicht den dazugehörigen datensatz..

Code: Alles auswählen

select min(zeit) from phpbb_nickpagegb

Verfasst: 16.11.2004 15:19
von Leuchte
klunzen hat geschrieben:dieser befehl liefert nur die kleinste zeit, jedoch nicht den dazugehörigen datensatz..

Code: Alles auswählen

select min(zeit) from phpbb_nickpagegb
Warum auch nicht so?

Code: Alles auswählen

SELECT * FROM phpbb_nickpagegb ORDER BY zeit DESC

Verfasst: 16.11.2004 15:35
von klunzen
Leuchte hat geschrieben:Warum auch nicht so?

Code: Alles auswählen

SELECT * FROM phpbb_nickpagegb ORDER BY zeit DESC
damit gibt man ersteinmal alle einträge geordnet nach dem eintragszeitstempel aus...


ich möchte jedoch den ältesten eintrag eines einzelnen users haben.
müßte in etwa so aussehen, geht aber nicht:

Code: Alles auswählen

SELECT * FROM phpbb_nickpagegb where uid = 5 and min(zeit)
in worten ist damit gemeint, dass vom user 5 seinem gästebuch der älteste eintrag aufgelistet wird...

Verfasst: 16.11.2004 15:43
von Leuchte

Code: Alles auswählen

SELECT * FROM phpbb_nickpagegb WHERE uid = '5' ORDER BY zeit DESC LIMIT 1

Verfasst: 16.11.2004 15:57
von klunzen
danke dir vielmals!!! :grin:

eine kleine änderung, war noch wichtig, da bei dieser tabelle der user im feld "an" und nicht in "uid" gespeichert wird.

so zeigt es mir nun den ältesten eintrag von user 5 an:

Code: Alles auswählen

SELECT * FROM phpbb_nickpagegb WHERE an = '5' ORDER BY zeit LIMIT 1
thx