Datum soll sortiert werden

Hallo!
Ich hab es geändert und habe es nicht mehr in einem varchar() drinstehen, sondern in DATE.
Und stimmt denn auch das Datumsformat (englisches Datum)?
Wenn ja, dann kannst Du nach dem Datum sortieren und es für die Ausgabe ins deutsche Format konvertieren.
PHP:
"SELECT *, DATE_FORMAT(`datum`, '%d.%m.%Y') AS `deutsches_datum` FROM `tshelfer_sonderkurse_salsa_stufeII` ORDER BY `datum`;"
Für die Ausgabe nutzt Du dann die "virtuelle" Spalte `deutsches_datum`.

Es wäre aber auch mit varchar() und dem deutschen Datum gegangen:
PHP:
"SELECT * FROM `tshelfer_sonderkurse_salsa_stufeII` ORDER BY STR_TO_DATE(`datum`, '%d.%m.%Y')"
Gruss Dr Dau
 
Wird es dan auch nach dem Datum sortiert oder nur nach den ersten zwei Ziffern?

Bei varchar() ist das nämlich so.
 
Sorry aber ich bin noch n Neuling in sachen SQL...."virtuelle Spalte"? Was ist das?
Wie könnte das aussehen, wenn man das auf dieses Skript anwendet?

PHP:
<?php
	require ('mysql.php');
 
	$sqlselectabschlussball= "SELECT * FROM tshelfer_veranstaltungen_Abschlussball WHERE `datum`!='0000-00-00' ORDER BY `datum` ASC";	
	if(!$res_id = mysql_query($sqlselectabschlussball)){
	die(mysql_error());
	}
	while($abschlussball=mysql_fetch_array($res_id)){
	echo '.$abschlussball['datum'].';
}
			?>
 
PHP:
$sqlselectstufe3= "SELECT *, DATE_FORMAT(`datum`,'%d.%m.%Y') AS `datum` FROM tshelfer_sonderkurse_salsa_stufeII WHERE `kurs-nr`!='' ORDER BY `datum` ASC";

ich hab mal den Tabellenname nach AS... geändert , aber dann wir der Befehl nicht angenommen. Erst wenn ich `datum` da einsetze reagier es fast richtig. Nur er sortier da wiederum nach dem Tag.
 
aber wenn ich dann ...AS `datum`... in z.B. ...AS `eurodatum`... umänder dann passiert überhaupt nix. Da wird das Datum dann im USA Stil gelassen und nicht in Deutsche um konvertiert.
 
Welchen Typs ist die „datum“-Spalte denn? Die DATE_FORMAT()-Funktion kann nur MySQL-eigene Datentypen formatieren.
 
Du musst dann auch bei der Ausgabe „eurodatum“ und nicht „datum“ verwenden. Denn „datum“ bleibt ja unverändert.
 
Zurück