So verschieben Sie eine DB2-SQL-Ergebnis-Tabelle in eine physikalische Datei?
Ich würde gerne die Ergebnis-Tabelle aus einer SELECT
- Anweisung, und bewegen Sie ihn dann in eine physische Datei.
Ich hatte gehofft, zu verwenden (pro W3Schools):
SELECT column_name(s)
INTO new_table_name [IN externaldatabase]
FROM old_tablename
Leider pro die IBM-Handbuch (DB2 for i, SQL-Referenz)
Den
SELECT INTO
- Anweisung erzeugt eine Ergebnistabelle, bestehend aus an die meisten eine Zeile, und weist die Werte in der Zeile zu der Variablen.
So, dann dachte ich, vielleicht könnte ich gebrauchen:
Den
INSERT
- Anweisung fügt Zeilen in eine Tabelle oder Sicht
Es gibt drei Formen dieser Anweisung:
1. DieINSERT
mit fullselect form verwendet wird, fügen Sie ein oder mehrere Zeilen in der Tabelle oder Sicht mit den Werten aus anderen Tabellen oder Ansichten.
Leider scheint es nicht zu funktionieren für mich.
INSERT INTO <tablename>
FROM ( SELECT (*) FROM <querytableA>
UNION
SELECT (*) FROM <querytableB>)
Ich bin in der Lage zu bewegen, eine Ergebnis-Tabelle in eine physikalische Datei, aber um dies zu tun muss ich deklarieren Sie einen cursor, und dann mit einem do … while
schreiben Sie die physische Datei, die einen Datensatz zu einer Zeit. Ich halte diese hässlich und unelegant und hatte gehofft, in der Lage sein zu verwenden SELECT INTO
oder eine INSERT INTO
- Anweisung.
Bitte helfen Sie mir "dump" der Ergebnis-Tabelle in eine physische Datei mit einem eleganten statement.
OS: IBM i v6.1
Datenbank: DB2
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie möchten, um die Tabelle zu erstellen die automatisch Sie können auch das folgende Formular benutzen:
Beachten Sie, dass Sie können eine Ansicht erstellen, die über die Abfrage dynamisch erstellen des Resultsets auf Nachfrage. Die Ansicht kann dann verwiesen werden, die von jedem HLL als eine logische Datei:
Hier ist die richtige syntax:
Für diese Arbeit
<dest_table>
muss bereits vorhanden sein und die Spalten kompatibel sind mit denen in<querytableA>
und<querytableB>
.Siehe "Einfügen von Zeilen mithilfe einer select-Anweisung" für mehr info.