17. April 2007

Zeilen zurückgeben ... ohne Tabelle ...?

Man möchte mit einem SQL eine Anzahl Zeilen zurückgeben und hat keine Tabelle ...? Das geht auch ohne Table Functions ...
SELECT rownum zeile FROM dual connect BY level <= x
also ...
SELECT rownum zeile FROM dual connect BY level <= 100
Probiert's mal aus ...

Kommentare:

Patrick Wolf hat gesagt…

Ich wollte das schon fast bei Deinem letzten Posting schreiben :-)

Habe ich vor einiger Zeit auch bei meinem SQL Tokenizer verwendet. Ist irgendwie cool das CONNECT BY...

Liebe Gruesse
Patrick

Sabine Heimsath hat gesagt…

Hallo Carsten,

irgendwie stehe ich auf dem Schlauch. Ich wollte das SQL in einer Schleife verwenden, aber PL/SQL steigt immer nach der ersten Iteration aus.
Habe ich etwas Entscheidendes übersehen?

Viele Grüße,
Sabine

SET SERVEROUTPUT ON

BEGIN
FOR rec IN (SELECT rownum zeile
FROM dual
CONNECT BY LEVEL <= 100)
LOOP
DBMS_OUTPUT.PUT_LINE(rec.zeile);
END LOOP;
END;
/

Carsten Czarski hat gesagt…

Hallo Sabine,

hmmm ... habe es grade getestet - Copy & Paste. Bei mir geht es blasenfrei ...

Grüße

-Carsten

Sabine Heimsath hat gesagt…

Vielen Dank!
Vielleicht liegt's bei mir an der 9i...

Kopfschüttelnde Grüße,
Sabine

Beliebte Postings