Announcement

Collapse
No announcement yet.

nur neue Datensätze einfügen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • nur neue Datensätze einfügen

    Hallo,
    bin ganz neu hier und Einsteiger bei ms sql... ich knobel jetzt schon ne ganze weile rum und komme nicht auf ne Lösung. Folgendes,
    ich habe ne quell- und zieltabelle:

    quelle:
    Country....|Region...................|Town
    -------------------------------------------------------
    Argentina.|Chaco.....................|Resistencia
    Austria.....|Niederosterreich.....|Neunkirchen
    Austria.....|Niederosterreich.....|Wilhelmsburg
    Belgium....|Antwerpen..............|Mechelen
    Brazil........|Distrito Federal.......|Brasília
    Brazil........|Rio Grande do Sul...|Caxias Do Sul

    ziel:
    Country.....|Region..................|Town
    -------------------------------------------------------
    Argentina..|Chaco....................|Resistencia
    Belgium.....|Antwerpen.............|Mechelen
    Brazil.........|Distrito Federal......|Brasília
    Brazil.........|Rio Grande do Sul..|Caxias Do Sul

    ...mit meinem Halbwissen bekomme ich nur die übereinstimmenden Sätze, möchte doch aber alle neuen Sätze haben, um nur die in der Zieltabelle einzufügen. Ich muss auf jeden Fall immer alle Spalten auf Unterschiede untersuchen, da die Tabellen halt nicht normalisiert sind und neue Sätze sich z.B. nur in der Stadt unterscheiden. Wer kann mir helfen??

  • #2
    Eine Möglichkeit ist, über EXISTS zu Prüfen, ob ein Datensatz vorhanden ist oder nicht.


    [highlight=SQL]INSERT INTO ziel
    (Country, Region, Town)
    SELECT Country, Region, Town
    FROM quelle
    WHERE NOT EXISTS (SELECT *
    FROM ziel
    WHERE ziel.Country = quelle.Country
    AND ziel.Region = quelle.Region
    AND ziel.Town = quelle.Town)[/highlight]

    Olaf
    Olaf Helper

    <Blog> <Xing>
    * cogito ergo sum * errare humanum est * quote erat demonstrandum *
    Wenn ich denke, ist das ein Fehler und das beweise ich täglich

    Comment


    • #3
      supi, danke, funktioniert...

      Comment

      Working...
      X