• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

SELECT-Abfrage ab bestimmter Zeile bis zum Ende

r-ene

Neues Mitglied
Hoi,
ich such nach einer SQL-Abfrage, die mir bspw. die Zeilen von Zeile 2 bis Ende anzeigt. Ich hab gedacht mit LIMIT, aber irgendwie bekomm ich das nicht hin. Ich könnte jetzt LIMIT 1,(riesen Zahl) setzen, aber das sieht so blöd aus und ist auch irgendwie unnötig. Gibt es da eine Alternative?
 
Werbung:
Wenn du einen Primärschlüssel hast, warum dann nicht einfach mit WHERE ID_blub > 1?
Oder bin ich gerade total matsche im Kopf?
 
Oh sorry, da hab ich zu ungenau formuliert.
Ich meine natürlich ab Zeile 2 der Abfrage, nicht der Tabelle. D.h. die erste Zeile der Abfrage soll einfach weggelassen werden. Wo die Abfrage anfängt weiß man nicht explizit.
 
Zuletzt bearbeitet:
Werbung:
Was würde das für einen Sinn machen? Dann wäre es kein gültiges SQL-Statement mehr und die Abfrage würde nicht mehr funktionieren.

Gib mal ein Beispiel.
 
Okay, also gibt eine Tabelle mit Rätsel-Einträgen.
Es gab bisher 3 Status (Mehrzahl von Status?!?) für einen Eintrag: Aktuell (2), Nicht aktuell(1), Noch nicht veröffentlicht(0).
Allerdings kann immer nur ein Rätsel aktuell sein, alle anderen sind nicht aktuell. D.h. immer der neuste Eintrag ist der aktuelle.
Also dachte ich, ich mach den aktuellen Status einfach weg (Status 2 --> 1), weil ich, wenn ich das aktuelle Rätsel abfragen will, immer nur nach dem neusten Eintrag mit Status 1 suchen muss.
Nun will ich die nicht aktuellen Rätsel aufrufen. Und da dachte ich, ich ruf einfach alle Rätsel mit Status 1 auf, nur eben den neuesten Eintrag nicht.
 
Hmmm, jetzt bin ich etwas verwirrt. Inwiefern muss jetzt die Gesamtheit aller Rätsel das Resultat einer ersten Abfrage sein, sodass mein Vorschlag nicht funktionieren kann?
Ich glaube, ich stehe dermaßen auf dem Schlauch, dass ich mich hier besser zurückziehe. :mrgreen:
 
Werbung:
@ingoS Ich weiß ja nicht welche Id die aktuellste ist, es sei den ich frag sie in der Datenbank ab, aber das ist ja schwachsinnig.
Deshalb suche ich einen Befehl, der mir ab einer bestimmten Zeile der Abfrage alle Ergebnisse bis zum Ende liefert.
Von Anfang bis Zeile 5 funkioniert ja z.B. so: LIMIT 5
Von Zeile 2 bis Zeile 5: LIMIT 1,4
Von Zeile 2 bis Ende: ??? Das suche ich... ;)

Naja egal, ich glaub ich belass es dann doch lieber bei 3 Status. Ist sowieso sinnvoller, weil ich entdeckt hab, dass ich auch Abfragen brauche, die überprüfen müssen, ob das jeweilige Rätsel das aktuelle ist.

Würde mich aber trotzdem interessieren, wie man das Lösen könnte.
 
Zähle wieviele Einträge in der Tabelle sind mit mysql_num_rows.

Eine Ausgabe der Rätsel erreichst du dann einfach mit
Order by ID desc Limit 0, (ergebnis_von_num_rows-1)
 
Hm, naja das wusste ich schon.
Hab gedacht, man bekommt das irgendwie mit LIMIT hin. Aber das geht wohl nicht.
 
Werbung:
Werbung:
Das Thema hat sich doch schon erledigt. ;-)
Ich hab es doch jetzt bei 3 Status gelassen.
Hab gedacht, ich leg einfach den "Aktuell" und "Nicht aktuell" Status zusammen und wähle immer den neusten Eintrag für das aktuelle Rätsel aus.
Aber um dann nur die "nicht aktuellen" abzurufen, wird es komplizierter.
Deswegen habe ich es so gelassen.
 
Werbung:
Recht Du hast.
Das hatten wir auch glaube ich schonmal.

Ich hab dazu das hier gefunden: Duden – Deutsche Sprache – Newsletter-Archiv

Aber ich wage zu behaupten, dass mindestens 90% der deutsch Sprechenden "Stati" sagen, ich habe zumindest noch nie jemanden "Statuuus" sagen hören. Und ehrlich gesagt, kann ich mich auch nicht an ein lang gesprochenes "uuus" aus dem Lateinunterricht erinnern.

Aber vermutlich nur noch eine Frage der Zeit, bis "Stati" im Duden steht :-)
 
Zurück
Oben