Announcement

Collapse
No announcement yet.

Update mit Select verknüpfen

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

  • Update mit Select verknüpfen

    Hallo,

    kann ich eine Update-Anweisung mit einer Select-Abfrage verknüpfen??
    Mein Problem: Ich hab 2 Tabellen. In Tabelle1 gibt es ein Feld Nummern von 1-500. In Tabelle2 sind Ergebnisse einer Select-Abfrage. Dort gibt es auch ein Feld mit Nummern.

    Ich möchte jetzt das Feld Summe in der Tabelle1 mit den Werten aus dem Feld Summe aus Tabelle2 updaten, wo die Nummer in Tabelle2 vorhanden ist.
    Wie gesagt, in Tabelle1 hab ich die Nummern 1 bis 500, in Tabelle 2 hab ich z.B nur 200 Nummern.

    Hoffe mal ich hab mich irgendwie verständlich ausgedrückt. Ach ja, bei dem Ganzen handelt es sich um eine Access DB.

    Hat vielleicht jemand eine Idee???

    Vielen dank schonmal für Eure Antworten.

  • #2
    Hallo,

    kann ich eine Update-Anweisung mit einer Select-Abfrage verknüpfen?
    ja - ich habe allerdings nur ein Beispiel für den MS SQL Server "am Lager":

    [highlight=SQL]
    UPDATE
    dbo.Products
    SET
    options = 100
    FROM
    dbo.Specials AS s
    WHERE
    Products.p_id = s.p_id
    [/highlight]

    Comment


    • #3
      update tabelle1 set tabelle1.summe=(select tabelle2.summe from
      tabelle2 where tabelle2.nummer=tabelle1.nummer)
      where exists (select t2.nummer from tabelle2 t2 where t2.nummer= tabelle1.nummer group by t2.nummer having count(*)=1)

      Der "where exists" Teil ist dafür da, dass Du keine NULL-Werte bekommst und keine Fehlermeldung weil für eine Nummer mehrere Datensätze gefunden wurden. Wenn Du sicher bist, dass jede Nummer in Tabelle2 nur einmal vorkommt, kannst ab group by in der Klammer alles weglassen

      Gruß
      docendo discimus

      Comment


      • #4
        hallo,
        vielen dank für eure antworten! mein problem dank eurer hilfe
        gelöst.

        Comment

        Working...
        X