mOSSpOWER Geschrieben 20. September 2004 Geschrieben 20. September 2004 Hallo, ich hatte den Befehl schon mal, lange ist's her, jetzt bräuchte ich ihn wieder dringend, kann ihn aber nicht finden. Ich brauche bei Oracle Abfrage den ersten Datensatz. Hintergrund ist, dass ich gewisse Spaltennamen aus Tabellen brauche, an die ich schnell kommen will (desc geht hier nicht, MÜSSEN mit db visualizer arbeiten). Wenn ich select * mache, muß ich immer mind. 10 - 20 Sekunden warten. Kann mir jemand helfen - Danke schon mal. Zitieren
mme Geschrieben 21. September 2004 Geschrieben 21. September 2004 select * from tabellenname where rownum = 1; Meinst du sowas? Grüße mme Zitieren
Biotecs Geschrieben 21. September 2004 Geschrieben 21. September 2004 Oder eben kombinierbar, wenn du doch mehr haben willst: select * from tabelle where rownum<x; Zitieren
Jasper Geschrieben 21. September 2004 Geschrieben 21. September 2004 rownum sollte generell mit inline-views verwendet werden um das korrekte resultat zu erhalten: select * from ( <select-statement> ) where rownum = 1; "select * from table where rownum=1" funktioniert nur exakt tin dieser form, sobald z.b. order by verwendet wird, ist nicht gesichert, dass das resultat richtig ist. -j Zitieren
Biotecs Geschrieben 21. September 2004 Geschrieben 21. September 2004 Wozu sollte man ein order by bei einem Datensatz benutzen wollen? mfg Zitieren
Jasper Geschrieben 21. September 2004 Geschrieben 21. September 2004 Wozu sollte man ein order by bei einem Datensatz benutzen wollen? ??? ein datensatz? das resultset des inline-view besteht nicht nur aus einem datensatz, sonst bräuchte man rownum nicht. top-n queries (ohne analytische funktionen) oder pagination fallen mir spontan als beispiele ein. -j Zitieren
Biotecs Geschrieben 21. September 2004 Geschrieben 21. September 2004 Ich brauche bei Oracle Abfrage den ersten Datensatz. lies doch bitte das nochmal. Zitieren
Jasper Geschrieben 21. September 2004 Geschrieben 21. September 2004 lies doch bitte das nochmal. ich habe das gelesen und auch verstanden. nirgendwo steht wie "oracle abfrage" aussieht. warum jemand das erste tupel aus einer menge haben will, deren reihenfolge quasi undefiniert ist, erschliesst sich mir nicht so ganz, aber das soll nicht mein problem sein. verwende weiter rownum in der von dir beschriebenen weise. soll mir egal sein. für mich hat sich das hiermit erledigt. -j Zitieren
Biotecs Geschrieben 21. September 2004 Geschrieben 21. September 2004 Du musst es auch nicht verstehen, aber mOSSpOWER wird schon wissen wofür er das braucht. Und damit kann diese sinnlos Diskussion ja zu Ende gehen. Ich denke die Frage des Threadschreibers ist beantwortet. mfg Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.