Mysql
 sql >> Database >  >> RDS >> Mysql

formattazione di un campo data in mysql

Dovrebbe essere visualizzato correttamente. Ad esempio, se stai cercando di ottenere il campo in PHP, non viene visualizzato come birthdate , ma piuttosto come è scritto:DATE_FORMAT(birthdate,'%m-%d-%Y') . Probabilmente è per questo che non è in $row['birthdate'] ma piuttosto in $row["DATE_FORMAT(birthdate,'%m-%d-%Y')"] , se non del tutto.

Per ottenerlo come birthdate , usa un alias per il campo con as parola chiave:

SELECT DATE_FORMAT(birthdate,'%m-%d-%Y') as birthdate, name FROM persons ORDER BY name DESC

Ora il riempimento si trova in $row['birthdate'] .

Un modo più flessibile è selezionare la data grezza (preferibilmente in formato UNIX_TIMESTAMP) e formattare la data nel proprio linguaggio di programmazione. In PHP, potresti fare qualcosa del genere:

$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 />";
}