Nehmen wir an, Sie haben Spalte A, B, C. Geben Sie auf Duplicate Key beispielsweise A = {einige Anweisung hier}, B = {einige Anweisung hier} und C = New_A + New_B. Kann ich die neuen Werte von A und B verwenden, um den neuen Wert von C zu bestimmen, oder muss ich die Ausdrücke für das neue A und B erneut eingeben? Vielen Dank!Können Sie die Aktualisierungswerte für doppelte Schlüsselaktualisierungen erneut verwenden?
0
A
Antwort
1
Ich denke, Sie können es tun. Wenn Sie dies tun:
Ich glaube, dass die Updates von links nach rechts ausgeführt werden. Wenn es also zu C = A + B
kommt, enthalten A
und B
die neuen Werte.
Verwandte Themen
- 1. Verwenden Sie die Sitzung erneut, wenn Sie Unity verwenden
- 2. Können Sie die Datei web.config für eine Azure-Webanwendung aktualisieren, ohne sie erneut zu implementieren?
- 3. t-SQL Verwenden Sie Zeilennummer, aber für doppelte Zeilen, verwenden Sie die gleiche Nummer
- 4. kann doppelte Achse nicht erneut indizieren
- 5. Können Sie Excel-Formeln für Berichtsdaten verwenden?
- 6. Verwenden Sie JsonParser erneut nach Deserialisierung
- 7. Können Sie ValidationRules für ListBox.SelectedItems verwenden?
- 8. Laravel Sammlung Aktualisierungswerte Artikel mit ‚wo‘
- 9. Sie können Scala für iOS-Code verwenden?
- 10. Regex: Verwenden Sie erneut eine Erfassungsgruppe
- 11. Verwenden Sie erneut Selektor mit Parametern
- 12. Erstellen Sie neue SQLCommands oder verwenden Sie dieselbe erneut
- 13. Konfrontieren und Aktualisierungswerte zwischen zwei Datenrahmen
- 14. So können Sie die Berechtigung erneut anfordern, sobald sie vom Benutzer abgelehnt wurde
- 15. Erhalten Sie nur 1 Vorkommen für die doppelte Datensätze
- 16. können Sie jquery sazalload für alle Bilder verwenden (nicht nur für die, die nicht sichtbar sind)
- 17. "verwenden Sie streng"; erlaubt jetzt doppelte Eigenschaften?
- 18. Wie können Sie Websites erinnern, nachdem Sie die Seite erneut geladen haben?
- 19. können Isolationsstufen doppelte Einfügung verhindern?
- 20. Warum doppelte Eigenschaften für die Bildgröße?
- 21. doppelte Schnittstellendefinition für die Klasse ‚RCTViewManager‘ XCode
- 22. Warum verwenden Sie die zufällige Klasse von Java, wenn Sie die SecureRandom-Klasse verwenden können?
- 23. Starten Sie die iPad-App erneut
- 24. ASP.NET ascx vs. aspx - Verwenden Sie Benutzersteuerelemente erneut?
- 25. Doppelte geschweifte Klammern können nicht angezeigt werden
- 26. Können Sie Settings.Settings-Datei auch für ASP.Net-Sites verwenden?
- 27. Können Sie ES6-Import-Alias-Syntax für React Components verwenden?
- 28. Können Sie SELECT * verwenden und Bedingung für alle Spalten setzen
- 29. Können Sie dieselbe ID für mehrere HTML-Seiten verwenden?
- 30. Können Sie das --verbose-Flag für einzelne Grunt-Aufgaben verwenden?
Oh, scheint zu arbeiten. Praktisch und logisch, danke! – zojwek
'C = WERTE (A) + WERTE (B)' wäre etwas deterministischer, da die ['VALUES()' -Funktion] (http://dev.mysql.com/doc/refman/5.7/en/ diverse-functions.html # function_values) liefert garantiert die neuen Werte, während das links-nach-rechts-Verhalten eher ein (un) glücklicher Zufall ist. In Standard-SQL transponiert 'UPDATE t1 SET b = a, a = b' die Werte von a und b, aber in MySQL setzt er sie beide auf a, weil es den Wert von "alt a", aber "neu b" annimmt die rechte Seite des Zuweisungsoperators. Ordnen Sie die Abfrage und den Code neu an. –
@ Michael-sqlbot Die 'VALUES()' Funktion nimmt die Werte auf, die in die Spalten eingefügt worden wären, wenn es kein Duplikat gegeben hätte, sie erhält nicht die neuen Werte von der 'UPDATE'-Klausel. – Barmar