Toon posts:

Datum omzetten naar europese notatie

Pagina: 1
Acties:
  • 367 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hallo,

Ik heb een variabele datum die ik uit een mysql database haal. Als ik hem nou weergeef dan komt hij naar voren met de amerikaanse notatie. YYYY-MM-DD

Hoe kan ik deze nou makkelijk omzetten naar de europese notatie (DD-MM-YYYY) ?

Groeten

  • prototype
  • Registratie: Juni 2001
  • Niet online

prototype

Cheer Bear

http://dev.mysql.com/doc/...e-and-time-functions.html

[ Voor 170% gewijzigd door prototype op 28-10-2006 22:42 ]


  • TERW_DAN
  • Registratie: Juni 2001
  • Niet online

TERW_DAN

Met een hamer past alles.

Op zich niet zo moeilijk. Pak de eerste 4 karakters, plaats die in een variabele, pak karakter 6 en 7, plaats die in een variabele en pak als laatste 9 en 10 en plaats die eveneens in een variabele. (hier ga ik er dus even vanuit dat de - ook opgeslagen is).
Vervolgens plak je eerst de derde, dan de tweede en de eerste aan elkaar, met streepjes er tussen. Deze 3 variabelen zijn dan je datum.

Hoe het taalspecifiek moet kan ik je misschien bij helpen (mits het maar PHP is :P). Maar vermeld dan even welke taal je gebruikt.

[edit]
de manier die ik hier beschrijf heb ik zelf overigens gebruikt omdat ik de dag, maand en jaar gelijk als losse variabele nodig had :P.
Anders is er vast een functie voor :)

[ Voor 14% gewijzigd door TERW_DAN op 28-10-2006 22:48 ]


  • markvt
  • Registratie: Maart 2001
  • Laatst online: 08:55

markvt

Peppi Cola

GET_FORMAT(DATE,'EUR')
code:
1
SELECT DATE_FORMAT(veldnaam,GET_FORMAT(DATE,'EUR'));


En dan alleen nog even de . vervangen door - en klaar is kees.

van-tilburg.info -=- meka (sega emulator) - Proud MEDION fanclub member - KOPPIG VOLHOUDEN !


  • Wortelsoep
  • Registratie: Juni 2001
  • Niet online
Uitgaande van PHP: SELECT UNIX_TIMESTAMP(datum) FROM (...)

En dan in de PHP: $datum = date('d-m-Y', $mysql_datum);

Waarbij je d-m-Y kan veranderen naar wens.


edit: Okay, er zijn meerdere wegen die naar Rome leiden, maar dit is in ieder geval mijn manier ;)

edit2@Terw_Dan: wat je doet is wel redelijk 'gevaarlijk', ik deed het vroegâh ook zo maar toen was er opeens iets in MySQL veranderd (vraag me niet wat precies) waardoor hij in plaats van 20061028225200 -> 2006-10-28 22:52:00 door ging geven, waardoor de variabelen in PHP dus voor geen meter meer klopten. Wat ik dan zou doen is:
SELECT DAY(datum) AS dag, MONTH(datum) AS maand, YEAR(datum) AS jaar FROM ...
Dan zit je zeker goed ;)

[ Voor 69% gewijzigd door Wortelsoep op 28-10-2006 22:55 ]


  • prototype
  • Registratie: Juni 2001
  • Niet online

prototype

Cheer Bear

Wat grappig dat meteen iedereen uitgaat van PHP ;)
@TS: wel handig om in het vervolg in de topictitle even aan te geven om welke taal het gaat om dit soort misverstanden te voorkomen en een google actie kan ook geen kwaad, volgens mij is de url die ik net gaf de eerste hit ofzo met keywords "mysql date"

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Overigens is dit niet de amerikaanse notatie (da's namelijk MM-DD-YYYY) maar ISO notatie.

All my posts are provided as-is. They come with NO WARRANTY at all.


Verwijderd

Topicstarter
Dank jullie wel, het is gelukt.

  • markvt
  • Registratie: Maart 2001
  • Laatst online: 08:55

markvt

Peppi Cola

Voor degene die dit topic vinden via de search:

Voor microsoft SQL server moet je CONVERT gebruiken daarmee kan je datums omzetten van het ene formaat naar het andere.

van-tilburg.info -=- meka (sega emulator) - Proud MEDION fanclub member - KOPPIG VOLHOUDEN !


  • Raynman
  • Registratie: Augustus 2004
  • Laatst online: 29-01 12:39
markvt schreef op zondag 29 oktober 2006 @ 10:52:
Voor degene die dit topic vinden via de search:

Voor microsoft SQL server moet je CONVERT gebruiken daarmee kan je datums omzetten van het ene formaat naar het andere.
En voor PostgreSQL gebruik je TO_CHAR() om de gewenste uitvoer als string te krijgen en er zijn nog genoeg andere datumfuncties, zeker als verschillende database servers een eigen functie bedenken.

Voor mensen die hier komen via de search zou ik gewoon zeggen: zoek de datum-/tijdfuncties in de manual voor de db die jij gebruikt; dan moet je er echt wel uit kunnen komen.
Pagina: 1