coolishMedlem sedan sep. 200297 inlägg Hej.
Jag vill uppdatera datumet för ett antal poster i en databas och använder mig av följande kod men får det inte att fungera. Databasen är en mysql-databas.
UPDATE post1 SET datum=(dateadd(mm, 1, datum))
WHERE format(datum, 'MM') = 12
Får inte detta att lira och undrar om någon ser några fel i det
Peter SMedlem sedan dec. 20025 484 inlägg Så här kanske:
update post1
set datum
= date_add(datum, interval 1 month)
where month(datum)
= 12
coolishMedlem sedan sep. 200297 inlägg Verkar som det uppdaterar året 1 framåt också vilket det inte ska göra. Det ska bara ändra månad, ingenting annat
Peter SMedlem sedan dec. 20025 484 inlägg Då kanske du får göra så här:
update post1
set datum
= concat(year(datum),'-',month(datum) + 1,'-',day(datum))
where month(datum)
= 12
Använder du timmar, minuter o.s.v. är det bara att lägga till dem på samma vis. :)
LarsGMedlem sedan dec. 200012 465 inlägg Det går nog inte så bra då inte ens Mysql tycker att 13 är en giltig månad.
coolish:
Vad vill du ha för resultat?
Peter SMedlem sedan dec. 20025 484 inlägg Red./ Läser man ditt originalinlägg långsammare är det väl helt enkelt följande du är ute efter?
update post1
set datum
= concat(year(datum),'-',1,'-',day(datum))
where month(datum)
= 12
coolishMedlem sedan sep. 200297 inlägg Vad jag är ute efter är helt enkelt att uppdatera datumet 2005-08-02 14:31:23 till 2005-12-29 14:31:23
Jag vill uppdatera månaden och eventuellt dagen utan att påverka år, tid etc.
Tror jag hittade en lösning...
UPDATE annons SET datum=replace(datum, '08', '12')
WHERE annonsID=6724 AND (month(datum) = 08);
LarsGMedlem sedan dec. 200012 465 inlägg Det där fungerar inte jämt. T.ex om du har värdet
'2008-08-08 08:08:08'
så blir det inte så bra.
Vad jag är ute efter är helt enkelt att uppdatera datumet 2005-08-02 14:31:23 till 2005-12-29 14:31:23
Din update ändrar inte dagen, så jag tycket att det fortfarande är oklart vad du vill åstadkomma.