![]() |
AW: SQL Update alle Einträge
[ code=SQL ] (ohne Leerzeichen natürlich)
|
AW: SQL Update alle Einträge
Zitat:
Aber im Moment stelle ich mich noch zu blöd an (siehe #20), aber vllt. lern ich's ja noch. |
AW: SQL Update alle Einträge
SQL-Code:
gab es nur in der alpha
MERGE
Und wurde später durch
SQL-Code:
ersetzt
Update or Insert
SQL-Code:
Der SQL-Tag ist eine Erweiterung des Code-Tags; diesen einfach um =SQL erweitern
Update Or Insert into <Tabelle> (<Feldliste>)
values ( <Werteliste> ) matching (<Feldliste übereinstimmnde Felder>); |
AW: SQL Update alle Einträge
Zitat:
SQL-Code:
um einiges mächtiger als das
MERGE INTO..
SQL-Code:
.
Update or Insert
wobei beide ihre Berechtigung haben. Aber ich glaube das ist auch schon Off Topic Zitat:
Aber jetzt hab ich's begriffen. |
AW: SQL Update alle Einträge
Und was war am
SQL-Code:
mächtiger?
MERGE
|
AW: SQL Update alle Einträge
Zitat:
Bsp. aus der Firebird.Docs:
SQL-Code:
Beim "UPDATE OR INSERT" werden IMMER entwerder INSERT oder UPDATE ausgeführt.
MERGE
INTO customers c USING (SELECT * FROM customers_delta WHERE id > 10) cd ON (c.id = cd.id) WHEN MATCHED THEN UPDATE SET name = cd.name WHEN NOT MATCHED THEN INSERT (id, name) VALUES (cd.id, cd.name) Dabei werden beim INSERT und UPDATE die GLEICHEN Felder eingefügt/geändert. Beim Merge hat man die Möglichkeit beim Update andere Felder als beim Insert zu setzen. Und man kann eine von beiden Operationen wegzulassen. Um wieder zu Thema "SQL Update alle Einträge" zurückzukehren: In diesem Fall, es fände nur der
SQL-Code:
-Zweig
..WHEN MATCHED THEN UPDATE SET ..
Verwendung,
SQL-Code:
würde man weglassen.
..WHEN NOT MATCHED THEN INSERT ..
Ein Geschwindigkeitsvorteil gegenüber einem einfachen "UPDATE .. SET = (Select.. From..)" ergibt sich wenn mehrer Felder der Zieltabelle aus gleichzeitig geändert werden.
SQL-Code:
MERGE INTO customers c USING (SELECT * FROM customers_delta WHERE id > 10) cd ON (c.id = cd.id) WHEN MATCHED THEN UPDATE SET name = cd.name, FeldX = cd.ZZ, FeldY = cd.TTT; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz