2016-07-13 16 views
0

Ich arbeite mit Toad und ich versuche, etwas mit seinem Editor zu tun.
Stellen Sie sich vor, dass wir die Abfrage unten in einem Editor von Toad tun können:
select firstName from NameToad: Zuweisen einer Abfrage zu einer Variablen als String

und die Ausgabe: ich jetzt
vorName
aa
bb
cc

Was brauchen, ist zu generieren Sie eine Stringvariable wie folgt mit diesen Vornamen:
aa,bb,cc

Und schließlich diese Variable in das Ausgabefenster drucken.

Ich habe einige Methoden wie SET result = select firstName from Name versucht, aber ich scheitere immer.

Antwort

0

Klingt wie ein Job für Listagg(). Um es in eine Variable zu setzen, möchten Sie in:

EDIT: Generiert auf Ihre eigene Tabelle anwenden.

select listagg(your_column, ',') 
     within group (order by your_column,) list_format 
     from your_table; 
+0

Ich habe etwa 1000 firstNames ... Können wir 'Select' einzeln umgehen? – Yves

+0

Sie benötigen nur den Code aus der Auswahllisteagg() on down. Der WITH-Teil soll das Beispiel einrichten, um zu zeigen, wie es funktioniert. Es heißt ein allgemeiner Tabellenausdruck (CTE) und ist wie eine in-line temporäre Tabelle. Ich muss diesen Wert von 1000 Namen in einer kommagetrennten Liste jedoch in Frage stellen? Was ist das eigentliche Ziel? Vielleicht gibt es einen besseren Weg, um zu dem Endergebnis zu gelangen, nach dem Sie wirklich streben. Oracle hat eine Größenbeschränkung von 4000 für einen varchar2() -Datentyp, wenn Sie das Ergebnis in eine Variable laden wollen. –

Verwandte Themen