[MySQL] curdate()-date AS aantaldagen

Pagina: 1
Acties:

  • BramT
  • Registratie: Oktober 2001
  • Laatst online: 20:32
In een tabelletje heb ik een aantal dingen staan met een standaard datum erbij (met CURDATE(), ziet er dus uit als YYYY-MM-DD).

Nu wil ik met een query ook meteen weten hoelang de entry al in de database staat (in dagen!).

Hetvolgende werkt (maar nog niet helemaal):
code:
1
SELECT naam, url, date, CURDATE()-date AS aantaldagen FROM naampje

Dit gaat goed zolang de data in dezelfde maand zitten (en jaar?!).

M'n output (v.b.):
code:
1
2
3
Bram, url1, 2001-12-01, 8
Henk, url2, 2001-11-30, 79
Blaa, url3, 2001-11-29, 80

Die 97 moet dus eigenlijk 9 zijn, en die 80 moet 10 zijn... wat gaat er hier fout en hoe fix ik dit?!?!?!
oplossing met PHP ook prima, maar meteen in de SQL statement doen leek me handiger.... :P

merci!

You are the all-dancing, all-singing crap of the world - Jack


  • BramT
  • Registratie: Oktober 2001
  • Laatst online: 20:32
jezus...

had ik het net opgegeven, struikel ik meteen over de oplossing...

zal deze ook maar meteen even melden:

om de CURDATE() en DATE moet nog even een TO_DAYS(...) staan:
code:
1
SELECT naam, url, date, TO_DAYS(CURDATE())-TO_DAYS(date) AS aantaldagen FROM naampje

sorry... zal de volgende keer iets langer doorzoeken.. ;)

You are the all-dancing, all-singing crap of the world - Jack


Verwijderd

toevoeging voor de mensen die het willen gebruiken op timestamps:

gebruik dan
SELECT naam, url, date, TO_DAYS(CURDATE())-TO_DAYS(FROM_UNIXTIME(timestamp_kolom)) AS aantaldagen FROM naampje