Eine SQL-update-query für die sequenzielle mal
Ich habe eine Datenbank mit einem Feld "Datum" in text-format.
Ich möchte update einige Daten in meiner Tabelle. Also, im Grunde, das aktuelle Datum ändern sollten, um neue Datum, das Ding ist, dass ich mindestens 1000 Datensätze, die aktualisiert werden müssen. Der einzige Vorteil ist, dass die Zeit in meinem Feld Datum ist fortlaufend.
Ich habe versucht, die folgende Abfrage:
UPDATE my_table set Date='05-10-2012 00:00:00' WHERE Date like '%04-26-2012%'
aber es vernachlässigt die Zeit-Abschnitt in mein Feld "Datum".
Zur Veranschaulichung meiner Absicht
Current Date New Date
04-26-2012 02:45:00 05-10-2012 01:19:00
04-26-2012 02:47:00 05-10-2012 01:20:00
04-26-2012 02:48:00 05-10-2012 01:21:00
04-26-2012 02:49:00 05-10-2012 01:22:00
04-26-2012 02:50:00 05-10-2012 01:23:00
So, Wie kann ich ein update für mein date, um das neue Datum mit den Zeit Abschnitt, den ich will ?
- also, sind Sie auch die änderung der Zeit-Teil zum starten von einer bestimmten minute?
- Wo bekommen Sie das Teil aus?
- ja, die neue Zeit Teil ab 01:19:00 und sollte es erhöhen sich 1 minute für jeden Datensatz
- das macht die Sache schwieriger, sind Sie auf SQL Server 2005 oder höher?
- ja, ich bin mit sql server 2008
WHERE [Date] LIKE '%string%'
oh dear...- Bitte sehen, warum sollten Sie nicht verwenden
[Date] LIKE '%string%'
: sqlfiddle.com/#!3/5b64f/4 Oder, wenn Ihr "Date" - Spalte wird als string gespeichert, damit aufhören. Viel bessere Behandlung des Themas hier: sqlblog.com/blogs/aaron_bertrand/archive/2009/10/16/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie eine variable deklarieren, bevor Sie Ihre update-Anweisung. Bis eine minute vor Ihrer Startzeit. Dann Inkrementieren Sie die variable in der update-Anweisung, bevor Sie das Feld. Ich habe ein Beispiel eingefügt unten.
alle Datentyp-Probleme beiseite, hier ya go...
where Date like '%04-26-2012%'
? Gegen welche Daten geben?Date
ist vom Datentyp varchar...nur kopiert aus seinem Beispielconvert(varchar
ohne Länge! sqlblog.com/blogs/aaron_bertrand/archive/2009/10/09/...