![]() |
Datenbank: MSSQL • Version: 2008 • Zugriff über: AnyDAC
[SQL]: Statement mit INSERT INTO... VALUES...und Left Join
Hallo zusammen und ein Frohes Weihnachtsfest!:xmas:
Ich versuche mich an einem SQL Statement wo Datensätze eingefügt werden sollen, einmal aus variablen Werten die aus keiner Tabelle kommen UND mit Werten aus einer anderen Tabelle. Im Prinzip sowas:
Code:
Die Werte "Rec_ID_X1" und "Rec_ID_X2" kommen aus einer anderen Tabelle die *jeweils* über ein Left Join abgefragt werden muss:
INSERT INTO Adressstamm (Name, Strasse, Ort, PLZ, Rec_ID_X1, Rec_ID_X2)
VALUES ('Mustermann', 'Spielstr. 5', 'Musterstadt', 12345, 17, 25)
Code:
Wie muss die INSERT INTO-Anweisung aufgebaut werden, so dass die variablen Werte gesetzt werden können *und* die beiden Werten aus der Tabelle Personalstamm?
Left JOIN Personalstamm as P1 on Adresstamm.Rec_ID_X1 = P1.Identifikation,
Left JOIN Personalstamm as P2 on Adresstamm.Rec_ID_X2 = P2.Identifikation Ich hoffe ich konnte mich halbwegs verständlich ausdrücken. Schon mal eine Danke vorab für eure Unterstützung! |
AW: [SQL]: Statement mit INSERT INTO... VALUES...und Left Join
Grundsätzlich würde ich (SQL-)Parameter verwenden.
Zudem würde ich versuchen die Abfrage mit ins Statement zu integrieren. Da der angegebene Join aber auf eine Bezeihung in die umgekehrte Richtung hin, deshalb wüsste ich nicht, wie man diesen in dieses Statement integrieren sollte. |
AW: [SQL]: Statement mit INSERT INTO... VALUES...und Left Join
Moin...8-)
Wie wäre es mit einem Subselect mit Parametern?
Code:
Parameter im gesamten Statement sind, wie schon gesagt, wichtig. :thumb:
INSERT INTO Adressstamm (Name, Strasse, Ort, PLZ, Rec_ID_X1, Rec_ID_X2)
VALUES ('Mustermann', 'Spielstr. 5', 'Musterstadt', 12345, (select idx1 from blubb where id = :bl), (select idx2 from bla where id = :ba)) Zu erwähnen sei noch, das die subselects nur einen einzigen Datensatz liefern dürfen, sonst gibt es Fehler. |
AW: [SQL]: Statement mit INSERT INTO... VALUES...und Left Join
Oder statt Subselect mit einer Datenbankfunktion, in der ein Cursor den gewünschten Wert liefert.
Grüße Mikhal |
AW: [SQL]: Statement mit INSERT INTO... VALUES...und Left Join
Hallo,
manchmal tut eine Pause ganz gut... Ich habe nun eine (richtigere) Lösung gefunden, indem ich ein schon vorhandenes Dataset (Datasource einer Query) um die benötigten beiden Felder erweitert habe. Das Dataset kann ich abfragen und in den beiden Values von INSERT INTO einfügen. Nun funktioniert alles. Vielen Dank und noch schöne Weihnachten/ Wochenende! :dp: Edit: Die Hinweise auf Parameter-Verwendung habe ich verstanden und wende diese i.d.R. auch an. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:43 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