MySQL: Aktualisieren Sie eine vollständige Tabelle und fügen Sie einen MD5-Hash für jede einzelne Zeile ein
Ich habe eine Spalte zu einer vorhandenen Tabelle. Jetzt brauche ich ein update der tablecontent, indem ein MD5-hash auf die neue Spalte, basierend auf dem Inhalt einer vorhandenen Spalte.
Um genauer zu sein:
id | name | date-of-birth | hash
1 | test | 12.12.12 | NULL
Gibt es mehr als 1 million Zeilen, dort, wo die hash = NULL. Nun muss ich das update-hash mit einem MD5-string, das ist basiert auf einem entsprechenden Spalte, z.B. name:
hash = MD5(test)
Ich wissen, wie es für eine einzelne Zeile. Aber wie zu tun, dass für alle Zeilen in einer einzigen SQL-Anweisung?
InformationsquelleAutor der Frage Ralf Marmorglatt | 2011-11-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie dies:
Beachten Sie, dass der test
hash IS NULL
und nichthash = NULL
wie du geschrieben in deiner Frage.InformationsquelleAutor der Antwort Mark Byers
Nicht brauchen, schreiben Sie eine extra Abfrage für das update.
erstellt automatisch einen hash-Wert für Zeilen, die bereits vorhanden sind.
Überprüfen Sie das Bild für mehr Klarheit
InformationsquelleAutor der Antwort Vijay Dodamani