UPDATE über gesamte Spalte

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • UPDATE über gesamte Spalte

    Hallo,
    sorry für die Newbie-Frage:
    Ich habe 2 Tabellen und möchte in der ersten Tabelle eine komplette Spalte updaten mit den Werten der zweiten Tabelle (erscheint für manche vieleicht unsinnig...)
    Als Beispiel: Ich möchte die Spalte Ort der Tabelle 2 mit den Werten der Spalte Ort der Tabelle 1 auffüllen, wo die ID übereinstimmt.

    tabelle 1
    ID | Name | Ort

    tabelle 2
    ID | Ort

    Ich habe das so probiert, aber das funktioniert wohl nicht:

    UPDATE tabelle1 SET tabelle1.ort = tabelle2.ort WHERE tabelle1.ID = tabelle2.ID
    Fehlermeldung: Unknown table 'tabelle2' in where clause


    Vielen Dank für eure Hilfe.

  • #2
    Re: UPDATE über gesamte Spalte

    Original geschrieben von kuglin
    UPDATE tabelle1 SET tabelle1.ort = tabelle2.ort WHERE tabelle1.ID = tabelle2.ID
    Fehlermeldung: Unknown table 'tabelle2' in where clause
    Nee, so simpel kann es wohl nicht funktionieren.

    Entweder per Script lösen (Tabelle2 auslesen, UPDATE-Statements für Tabelle1 generieren und absetzen), oder per Subselect.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      Doch

      UPDATE tabelle1,tabelle2 SET tabelle1.ort = tabelle2.ort WHERE tabelle1.ID = tabelle2.ID

      Kommentar


      • #4
        Danke erstmal...
        Bei der Lösung von "asp2php" bekomme ich leider noch einen SQL-Fehler...?
        An was könnte das denn liegen?
        Wie könnte denn ansonsten ein Subselect aussehen?

        Kommentar


        • #5
          wasfür Fehler hast du? Ansonstens kannst du hier nachlesen http://www.mysql.org/doc/refman/5.1/en/update.html

          Kommentar


          • #6
            Ich bekomme den Fehler:
            #1064 - You have an error in your SQL syntax near ' tabelle2 SET tabelle1.ort = tabelle2.ort WHERE tabell' at line 1

            Kommentar


            • #7
              MySQL Version? Es liegt eventuell an der Version, MySQL hat nicht immer die Standardfeature, was andere DBMS hat, nach und nach werden sie implementiert, daher sind bestimmte Sachen versionsabhängig. Lese bitte im Doku nach, was mit deeiner Version möglich ist.
              EDIT:
              Grad gefunden:

              Starting with MySQL 4.0.4, you can also perform UPDATE operations covering multiple tables

              Zuletzt geändert von asp2php; 05.02.2007, 11:30.

              Kommentar


              • #8
                Ich habe Version 3.23.52. Ich glaube, ich sollte mein MySQL updaten...

                Kommentar


                • #9
                  Original geschrieben von kuglin
                  Ich habe Version 3.23.52. Ich glaube, ich sollte mein MySQL updaten...
                  äh... ja. Und überprüfe am besten auch gleich noch die Webserver und php-Version x_X

                  Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                  bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                  Wie man Fragen richtig stellt

                  Kommentar

                  Lädt...
                  X