Oracle fügt aus select in Tabelle mit mehr Spalten ein


68

Ich möchte aus einer select-Anweisung in eine Tabelle einfügen, es werden jedoch 3 Spalten von der select-Anweisung zurückgegeben, und die Tabelle enthält 4 Spalten. Ich möchte 0 für alle Zeilen in der zusätzlichen Spalte hinzufügen. Kann mir jemand eine SQL-Beispielabfrage dafür geben?

Vielen Dank!

Antworten:


130

Fügen Sie einfach die '0' in Ihre Auswahl ein.

INSERT INTO table_name (a,b,c,d)
    SELECT
       other_table.a AS a,
       other_table.b AS b,
       other_table.c AS c,
       '0' AS d
    FROM other_table

14
+1 für ein vollständiges Beispiel, enthält aber mehr Dinge als ich normalerweise verwenden würde. Ich hätte nicht ()um die selectAnweisung herum und würde die Spaltennamen nicht aliasen. Ich würde die Null ohne Anführungszeichen lassen, wenn die Zielspalte einen numerischen Typ hätte, und nur dann zitieren, wenn die Zielspalte einen Zeichendatentyp hätte.
Shannon Severance

5

Setzen Sie 0 in SQL als Standard oder fügen Sie 0 in Ihren Tabellenbereich ein


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.