Datum anderst sortieren

heliii

Mitglied
Hallo Zusammen,

Hab folgendes Problem. In meiner Datenbank sind die Datum in folgenden Format gespeichert:

dd.mm.yy

15.06.07


Nun sollte ich das Datum aber anderst herum haben:

yy.mm.dd
07.06.15


Kann mir jemand sagen wie ich dies machen kann?


Besten Dank,
Heliii
 
Hallo,

wenn dein Datum auch in Form einer Datumsspalte gespeichert ist, dann kannst du mittels

SQL:
SELECT DATE_FORMAT(<datumsspalte>, '%y.%m.%d') FROM <tabelle>

Markus
 
entweder du machst das auch in der SQL abfrage mit substrings, oder du arbeitest mit explode() und baust es neu zusammen, nur anderst geordnet.

Generell solltest du aber überdenken die Daten anderst abzuspeichern weil sich dadurch viele andere Funktionen auch ergeben, sofern dies möglich ist.
 
ohne explode nichts zu machen glaube ich
strtotime würde auch nicht greifen ..

PHP:
	$date	= "15.06.07";
	echo $date." - reversed - ".implode(".", array_reverse(explode(".", $date)));
 
Ok, wenn es schon eine Textspalte in dem Format, dann parst und sortierst du folgendermassen:

MySQL-Syntax:

SQL:
SELECT DATE_FORMAT(STR_TO_DATE(<datum_als_string>,'%d.%m.%y') , '%y.%m.%d') 
  FROM <tabelle> 
 ORDER BY STR_TO_DATE(<datum_als_string>,'%d.%m.%y');

oder in Oracle-Syntax:

SQL:
SELECT TO_CHAR(TO_DATE(<datum_als_string>,'DD.MM.YY'),'YY.MM.DD')
FROM <tabelle>
ORDER BY TO_DATE(<datum_als_string>,'DD.MM.YY')

Markus
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück