Spalten dividieren?
-
Tabelle: Wert1 Wert2 Ergebnis 1 1 Null 2 2 Null 3 3 Null . . . . . . . . .
Hi Leute!
Ich hab oben gezeigt Tabelle. Ich möchte nun in einem Query die Ergebnisspalte mit der Berechnung aus Wert1 + Wert2 füllen. Wie gehe ich da vor? Ich hab natürlich schon mal angefangen einen Query hin zu schreiben:
update Tabelle
set Ergebnis = (select Wert1 / Wert2 from Tabelle);Die select-Abfrage tut einzeln was sie soll; in Verbindung mit dem Update aber nicht so ganz. Da bekomm ich vom Oracle SQL-Developer folgendes zurück:
Fehlerbericht:
SQL-Fehler: ORA-01427: single-row subquery returns more than one row
01427. 00000 - "single-row subquery returns more than one row"
*Cause:
*Action:
-
Ja, du musst eine WHERE-Klausel ins Subselect einfügen, etwa so:
update Tabelle t1
set Ergebnis = (select Wert1 / Wert2 from Tabelle where id = t1.id);
-
Es reicht:
UPDATE t1 SET Ergebnis = Wert1/Wert2