Ergebnis 1 bis 5 von 5

Thema: Mysql Frage

  1. #1
    Alter Contao-Hase
    Registriert seit
    06.07.2009.
    Beiträge
    1.493

    Standard Mysql Frage

    Moin Community,

    ich stehe gerade echt nen weng auf dem Schlauch:

    Ich habe eine Datenbank mit folgendem Inhalt

    id - name - vorname - plz - wert
    1 - Mustermann - Max - 05555 - 15


    Und dann noch eine Excel-Liste mit folgenden Werten

    id - wert
    1 - 17

    Wie bekomme ich jetzt die Werte aus meiner Excel Liste am schnellsten in meine Mysql-Datenbank aktualisiert?

    Code:
    UPDATE users SET wert = 17 WHERE id = 1"
    Ich habe ja jetzt logischweise keine Lust für jede ID (ca. 500) die Wertangabe zu kopieren ^^ Irgendwie stehe ich gerade mächtig auf dem Schlauch.

  2. #2
    Contao-Urgestein Avatar von Kahmoon
    Registriert seit
    22.06.2009.
    Ort
    München
    Beiträge
    5.280

    Standard

    Normalerweise würde es wie folgt gehen wenn der andere Datensatz auch eine Tabelle und kein Excel wäre.

    ungetestet!
    Code:
    UPDATE users,excel SET users.wert = excel.wert WHERE users.id = excel.id
    Ich würde mir hier eine temporäre Tabelle aus der Excelliste anlegen, die man danach löschen kann.

  3. #3
    Alter Contao-Hase
    Registriert seit
    06.07.2009.
    Beiträge
    1.493

    Standard

    So ne Spontane Idee...

    Die EXCELL-Tabelle als CSV speichern und dann in MYSQL als neue Tabelle hinterlegen.

    Dann mit dem Subselect:

    Code:
    UPDATE user SET user.wert = (SELECT usernew.wert
    FROM usernew WHERE user.id = usernew.id)

  4. #4
    Alter Contao-Hase
    Registriert seit
    06.07.2009.
    Beiträge
    1.493

    Standard

    Okay dann war ich schon auf dem richtigen Dampfer.

    ne Tabelle reicht... muss ja nicht ne Datenbank sein. das vereinfacht den code

  5. #5
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.943

    Standard

    Zitat Zitat von Acta Beitrag anzeigen
    Code:
    UPDATE users SET wert = 17 WHERE id = 1"
    Ich habe ja jetzt logischweise keine Lust für jede ID (ca. 500) die Wertangabe zu kopieren ^^ Irgendwie stehe ich gerade mächtig auf dem Schlauch.
    Nich sonderlich elegant, aber Du könntest Dir das
    Code:
    UPDATE users SET wert = 17 WHERE id = 1"
    in Excel über Feldfunktionen
    Code:
    =VERKETTEN("UPDATE users SET wert=";B1;" WHERE id=";A1;";")
    zusammenbauen und die so erzeugten SQL-Befehle dann auf die Datenbank "loslassen"
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •