So habe ich einige Tabellen mit NULL-Werten, die ich mit dem letzten gültigen Wert füllen möchte. Ich kann eine neue Tabelle mit der korrigierten Spalte auswählen, aber ich bin mir nicht sicher, wie ich die Werte in der Datenbank aktualisieren soll. Könnte mir jemand mit der Update-Anweisung helfen?SQLite füllt Nullwerte
select b.timeStamp,
b.var_5,
(select a.var_5 from wme_test as a where a.timeStamp<=b.timeStamp and a.var_5 <> 'NULL' order by timestamp desc limit 1) as correctedVar5
from wme_test as b
die Ausgabe für diese Abfrage ist dies
... oder Sie können "ein sehr kurzes Programm oder gespeicherte Prozedur schreiben", was wahrscheinlich ist, was ich persönlich tun würde, wenn auch nur, weil ich dann ** leichter * sehen kann * ** "Was der Computer wirklich tun wird, und warum." ### * (Nein, ich bestreite deine Antwort nicht: tatsächlich habe ich sie noch einmal abgestimmt.) * –
Für diese spezielle Anwendung glaube ich, dass das Ausführen dieser Abfrage am besten funktioniert, vielen Dank, ich habe etwas versucht das war zuerst aber nicht sicher, wie man auf die äußere Tabelle statt auf die innere (das heißt die der Unterabfrage) referiert, wenn beide die gleiche Tabelle sind. Am Ende musste ich nur die absteigende Reihenfolge hinzufügen und die Variablennamen setzen, die Abfrage endete folgendermaßen: update wme_test set var_13 = (Wählen Sie var_13 aus wme_test als b wobei timeStamp <= wme_test.timeStamp und var_13 nicht ist null Sortierung nach timeStamp desc limit 1) wobei var_13 null ist – heczaco