Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi [MS SQL] Insert mit Tabellenvergleich (https://www.delphipraxis.net/38290-%5Bms-sql%5D-insert-mit-tabellenvergleich.html)

Computerbabalulu 17. Jan 2005 11:23


[MS SQL] Insert mit Tabellenvergleich
 
Hallo :hi:

Ich habe folgendes Problem:

Ich habe zwei MS SQL Tabellen.
Tabelle 1: login
Tabelle 2: logout

Diese beiden Tabellen haben nun drei gleiche felder: [dealer], [envelope] und [linecode].
Jetzt habe ich eine Tabelle login_backup erstellt, die genau so wie die Logintabelle aufgebaut ist.

Ich möchte nun alle Daten aus Login in die Login_Backup Tabelle schieben, bei denen die Inhalte der drei Felder [dealer], [envelope] und [lincode] gleich sind.

Wie geht das?

Gruß aus Mönchengladbach
Frank

Leuselator 17. Jan 2005 11:27

Re: [MS SQL] Insert mit Tabellenvergleich
 
SQL-Code:
INSERT INTO login_backup
     SELECT dealer
          , envelope
          , lincode
       FROM login
      WHERE dealer = envelope
        AND dealer = lincode
anschliessend:
SQL-Code:
DELETE FROM login
      WHERE dealer = envelope
        AND dealer = lincode
gruß

Computerbabalulu 17. Jan 2005 11:41

Re: [MS SQL] Insert mit Tabellenvergleich
 
Hi Tim,

vielen Dank. Ich habe mich da wohl etwas falsch ausgedrückt. :oops:
Ich meine alles Datensätze aus Login in Login_Backup verschieben, bei denen die gleichen Inhalte [dealer], [envelope] und [linecode]
auch in der logout Tabelle stehen.

Heißt, in der login steht [dealer:222222] , [envelope:333333], [linecode:8901]. Wenn diese drei Werte auch im Logout vorhanden sind, dann die Daten aus Login ins Backup.

Ich hoffe das war etwas genauer :?

liebe Grüße
Frank

Leuselator 17. Jan 2005 14:01

Re: [MS SQL] Insert mit Tabellenvergleich
 
Dann halt so
SQL-Code:
 
INSERT INTO login_backup
     SELECT li.dealer
          , li.envelope
          , li.lincode
       FROM login li
 INNER JOIN logout lo
         ON lo.dealer  = li.dealer
        AND lo.envelope = li.envelope
        AND lo.lincode = li.lincode
gruß

Computerbabalulu 17. Jan 2005 14:04

Re: [MS SQL] Insert mit Tabellenvergleich
 
Hi Tim,

ja genau so :thumb: Supi! Hatte zwar einiges nachgelesen aber es dennoch nicht hin bekommen.
So wie ich das jetzt bei dir sehe, war es wohl ein falscher Syntax bei mir. :gruebel:

Vielen Dank :thumb:

liebe Grüße
Frank


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz