Formattare le date in MySQL

Ultima revisione a cura di Sante Caserio, 31 Gennaio, 2010 02:33

Se si vuole mostrare il contenuto di un campo DATE o DATETIME, è necessario utilizzare la funzione DATE_FORMAT() per indicare in quale formato si vuole visualizzare la data.

DATEFORMAT accetta due parametri: il primo è la data stessa, il secondo è una stringa che rappresenta il formato.

Ecco gli esempi più comuni:

1 mysql> SELECT DATE_FORMAT(tab1.date1, '%d-%m-%y');
2      > 30-1-10
3 mysql> SELECT DATE_FORMAT(tab1.date1, '%d-%m-%Y');
4      > 30-1-2010
5 mysql> SELECT DATE_FORMAT(tab1.date1, '%W %d-%m-%Y');
6      > Saturday 30-1-2010

Per scrivere il nome del giorno della settimana in una lingua diversa, si può usare %w

 1 $sql = "SELECT DATE_FORMAT(tab1.date1, '%w');";
 2 $res = $mysqli_query($sql);
 3 $row = $res->fetch_row();
 4 switch ($row[0]) {
 5     case 1 :
 6         $day = 'Lunedì';
 7         break;
 8     case 2 :
 9         $day = 'Martedì';
10         break;
11     case 3 :
12         $day = 'Mercoledì';
13         break;
14     case 4 :
15         $day = 'Giovedì';
16         break;
17     case 5 :
18         $day = 'Venerdì';
19         break;
20     case 6 :
21         $day = 'Sabato';
22         break;
23     case 7 :
24         $day = 'Domenica';
25         break;
26 }