Ankündigung

Einklappen
Keine Ankündigung bisher.

Suche passenden UPDATE-Befehl

Einklappen

Neue Werbung 2019

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

  • Suche passenden UPDATE-Befehl

    Hey Leute,

    ich habe dieses abgefahrene Gebilde von SQL code,
    1. vorab, die Abfrage funktioniert und ist genau wie ich es will.
    Die Frage ist, wie kann ich das Ergebnis speichern?


    Das kommt dabei raus:
    spieltags_ID spiel_id user_id tip_heim tip_gast pkt
    1 5275 20081192 2 1 9
    1 5278 20081222 1 1 10
    1 5276 20081192 3 1 7
    1 5280 20081192 2 0 9
    1 5280 20081222 1 0 10
    1 5282 20081222 2 2 8
    1 5276 20081222 2 1 8
    1 5277 20081222 0 1 8
    1 5275 20081147 1 0 9
    1 5283 20081224 1 1 6
    1 5277 20081147 0 1 8
    1 5280 20081147 1 0 10
    .
    .
    .

    Wie kann ich das jetzt mittels UPDATE komplett ohne schleife in die Tabelle einfügen?
    geht das überhaupt???

    Danke euch vorab für die Hilfe.
    LUK
    www.web-ted.de


  • #2
    Ich glaube du suchst keine Update Befehle sondern einen Insert.
    Update ändert nur Datensätze und Insert erstellt Neue.

    Habe mal kurz Google befragt:
    SQL: 6.2.2 INSERT mit SELECT

    Hoffe ich konnte dir helfen
    Look at This!
    Digital-Duty.DE
    Für Syntax-Fehler übernehme ich keine Haftung!

    Kommentar


    • #3
      ne leider nicht,
      ich lese die Tipps aus der Tabelle tip_spieltag aus, bereche diese und will das Ergebnis in die selbe Tabelle zurückschreiben...
      www.web-ted.de

      Kommentar


      • #4
        Wenn du es schaffst, in einem SELECT-Statement irgendwelche Werte zu berechnen - dann kannst du im Normalfall eben diese Berechnung auch in einem UPDATE-Statement durchführen.

        Kommentar


        • #5
          Brauchst du die Ausgabe denn?

          Würde es nicht dann mehr sinn machen, gleich ein Update-Statement zu nehmen? Und wenn die Ausgabe dennoch brauchst ein Select-Statement hinterher zu machen?
          Gibt bei einem Update-Statement die Möglichkeit ein Inner Join zu machen.
          Look at This!
          Digital-Duty.DE
          Für Syntax-Fehler übernehme ich keine Haftung!

          Kommentar


          • #6
            ne ich brauche die Ausgabe nicht, aber ich komme mit dem UPDATE nicht klar.

            müsste dann ja



            dann sagt der mit Error syntax near FROM tip_spieltag AS...
            www.web-ted.de

            Kommentar


            • #7
              Denke auch hier wird dir keiner dein Update-Statement umbauen!

              Google einfach mal nach Begriffen wie "Update inner join" oder "mysql update inner join". Da wirst schnell fündig werden

              Nachtrag:
              Solltest dir die DML genauer anschauen, wenn du vor hast im Datenbankbereich weiter zu machen!
              Look at This!
              Digital-Duty.DE
              Für Syntax-Fehler übernehme ich keine Haftung!

              Kommentar


              • #8
                ich check es einfach nicht, sorry...

                logisch muss es doch so funktionieren oder brauch ich einen anderen ansatz???

                UPDATE tip
                SET tip.tip_pkt = IF(...)
                FROM tip_spieltag AS tip join liga_spieltag AS ist ON tip.spiel_id = ist.spiel_id
                Where IF(...) AND tip.tip_heim != -1 AND tip.tip_gast != -1 AND ist.tore1 != -1 AND ist.tore2 != -1 AND spieltags_id = 1;

                wo ist der denkfehler?
                www.web-ted.de

                Kommentar


                • #9
                  Wenn du dir die Update- Synthax angeschaut hättest, wüsstes du zum Beispiel das bei einem Update- Statement kein "FROM" gibt!

                  SQL UPDATE Anschauen!
                  UPDATE zum Aktualisieren existierender Zeilen Anschauen!
                  Look at This!
                  Digital-Duty.DE
                  Für Syntax-Fehler übernehme ich keine Haftung!

                  Kommentar


                  • #10
                    Ja aber hier steht es doch auch mit from:


                    UPDATE UMSATZ
                    SET Gesamt = U.A_STUECK * A.A_PREIS
                    FROM UMSATZ AS U INNER JOIN ARTIKEL As A
                    On U.A_NR = A.A_NR
                    www.web-ted.de

                    Kommentar


                    • #11
                      Entschulde ich mich für die falsche Information!

                      Doch anhand des Beispiels solltest du deine Anweisung umschreiben können
                      Look at This!
                      Digital-Duty.DE
                      Für Syntax-Fehler übernehme ich keine Haftung!

                      Kommentar


                      • #12
                        Zitat von skywalkerluk Beitrag anzeigen
                        ne ich brauche die Ausgabe nicht, aber ich komme mit dem UPDATE nicht klar.

                        müsste dann ja



                        dann sagt der mit Error syntax near FROM tip_spieltag AS...
                        Kannst Du noch mal den Original SQL-Befehl zeigen? Aus meiner Sicht war der (bis auf den Syntaxsfehler) korrekt. Das ganze Konstrukt war extrem komplex verschachtelt, aber meiner Meinung nach zwar nicht schön, aber auch nicht falsch. Ich habe gestern abend den Fehler nicht mehr gefunden.

                        Falls also noch interesse besteht, kannst du ja den SQL nochmal zeigen.

                        Grüße
                        Thomas

                        Kommentar


                        • #13
                          Zitat von thomas_w Beitrag anzeigen
                          Kannst Du noch mal den Original SQL-Befehl zeigen?
                          [...] Falls also noch interesse besteht, kannst du ja den SQL nochmal zeigen.
                          Leuten, die nachträglich Informationen aus ihren Postings rauseditieren und damit den Threadverlauf unnachvollziehbar machen, sollte man überhaupt nicht mehr helfen ...

                          @skywalkerluk: Bitte unterlasse solche Aktionen künftig!

                          Kommentar

                          Lädt...
                          X