Mělo by se správně zobrazovat. Pokud se například pokoušíte získat pole v PHP, nezobrazí se jako birthdate
, ale spíše jak je psáno:DATE_FORMAT(birthdate,'%m-%d-%Y')
. To je pravděpodobně důvod, proč není v $row['birthdate']
ale spíše v $row["DATE_FORMAT(birthdate,'%m-%d-%Y')"]
, pokud vůbec.
Chcete-li jej získat jako birthdate
, použijte alias pro pole s as
klíčové slovo:
SELECT DATE_FORMAT(birthdate,'%m-%d-%Y') as birthdate, name FROM persons ORDER BY name DESC
Nyní ji najdete v $row['birthdate']
.
Flexibilnějším způsobem je vybrat nezpracované datum (nejlépe ve formátu UNIX_TIMESTAMP) a naformátovat datum ve vašem programovacím jazyce. V PHP můžete udělat něco takového:
$query = "SELECT UNIX_TIMESTAMP(birthdate) as birthdate, name FROM persons ORDER BY name DESC";
$resource = mysql_query($query);
while($row = mysql_fetch_assoc($resource)) {
echo date('m-d-Y', $row['birthdate'])." ".$row['name']."<br />";
}