Anmelden

View Full Version : SQL Update aus zwei Dateien mit 3 Schlüsselfeldern



Seiten : 1 [2]

Pikachu
12-07-12, 16:10
UPDATE ... SET ... FROM ... ???

Sachen gibts ...

B.Hauser
12-07-12, 16:22
Das stimmt,
aber am SQL Server würde ich das ganz anders machen

in etwa so:

UPDATE Tabelle A
SET A.sdsd=B.sdsd, A.afaf=B.afaf
FROM Tabelle A LEFT JOIN Tabelle2 B
ON a.s = B.s and A.f = B.f and A.i =B.i
WHERE ....

so würde ich das da machen, und mache ich auch :-)

bis dann
Martin

Das funktioniert auf der DB2 for i?!
Ich denke doch nicht, da es nicht SQL Standard ist.

Birgitta

Fuerchau
12-07-12, 17:15
Das ist MS-SQL-Server, dir hatten schon immer eine eigene Syntax, allerdings SQL99-Standard und neuer kann der trotzdem.
Manches kommt halt über MS-Access da rein, daher sind z.T. auch VBA-Funktionen verwendbar (mid() statt substr() dateserial() u.v.m.).
Aber halt nicht Standard.

B.Hauser
13-07-12, 08:53
Das ist MS-SQL-Server, dir hatten schon immer eine eigene Syntax, allerdings SQL99-Standard und neuer kann der trotzdem.
Manches kommt halt über MS-Access da rein, daher sind z.T. auch VBA-Funktionen verwendbar (mid() statt substr() dateserial() u.v.m.).
Aber halt nicht Standard.

Soweit zum Thema Standard!
Aktuell gibt es tatsächlich nur eine einzige Datenbank, die den aktuellen Standard komplett abdeckt, auch wenn einiges noch nicht ganz ausgereift ist. Und das ist die DB2 for i!

Alle anderen Datenbanken decken den Standard zu wesentlich geringeren Teilen ab, so ist auch die große Oracle nur bei etwas über 80%. (Man braucht nur in die Referenz zu schauen, was noch nicht abgedeckt ist).

... das heißt jedoch nicht, dass die Datenbanken keine Features abdecken düfen, sie nicht standardkonform sind. Diese Features können nur in anderen Datenbanken nicht eingesetzt werden.

Birgitta