Avatar billede razmuz_dk Nybegynder
27. maj 2005 - 18:22 Der er 5 kommentarer og
1 løsning

UPDATE, sæt celle x dage frem

Hej Eksperter,

I forbindelse med en UPDATE, hvordan laver man nemmest sådan at en DATETIME-celle ændres til 20 dage senere end den nuværende værdi. Hvis fx der i cellen står 2005-01-01 00:00:00 skal den ændres til 2005-01-16 00:00:00 hvis altså ønsker at gå 16 dage frem.

Dette illustrerer kode-stumper jeg efterlyser:

UPDATE tabel SET tidspunkt=tidspunkt+$dage DAYS WHERE id='$id'

Hvis ikke det er muligt med dage, kan jeg naturligvis bare omregne til sekunder.

Håber i forstår mit spørgsmål.

mvh. Rasmus
Avatar billede barklund Nybegynder
27. maj 2005 - 18:29 #1
Brug date_add:

UPDATE tabel SET tidspunkt=DATE_ADD(tidspunkt,INTERVAL $dage DAY) WHERE id='$id'

--
Morten Barklund
Avatar billede razmuz_dk Nybegynder
27. maj 2005 - 18:40 #2
Tak skal du have. Smid et svar :)
Avatar billede razmuz_dk Nybegynder
27. maj 2005 - 18:53 #3
Oh nu jeg lige har dig... kan man lave et enkelt sql-kald, der gør følgende:

hvis tidspunkt>NOW() {
  sæt tidspunkt $dage dage frem
} ellers {
  sæt tidspunkt til $dage dage SENERE end NOW()
}

..tak
Avatar billede barklund Nybegynder
27. maj 2005 - 20:57 #4
Snildt :)

UPDATE tabel SET tidspunkt = DATE_ADD(IF(tidspunkt > NOW(), tidspunkt, NOW()),INTERVAL $dage DAY) WHERE id='$id'

--
Morten Barklund
Avatar billede razmuz_dk Nybegynder
28. maj 2005 - 11:07 #5
tak :P
Avatar billede barklund Nybegynder
28. maj 2005 - 12:33 #6
Tark for points :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester