2009-12-17 10 views

risposta

22

Siete alla ricerca di UNIX_TIMESTAMP().

See: http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_unix-timestamp

Se UNIX_TIMESTAMP() viene chiamato con un argomento data, restituisce il valore dell'argomento come secondi dal '1970-01-01 00:00:00' UTC.

+0

Questo converte un Datetime, che in generale Al non è necessario essere UTC. Se è necessario convertire un Datetime locale, questa risposta deve essere modificata. Controlla la mia risposta. – hyprfrcb

2

SELEZIONA DATE_FORMAT (value, '% Y% m% d') AS date_ymd FROM table_name;

2

UNIX_TIMESTAMP(datetime) forza una localizzazione del datetime, che a differenza del timestamp, viene memorizzata "così com'è".

È necessario realtà qualsiasi dei seguenti, per scartare la correzione UTC:

UNIX_TIMESTAMP(CONVERT_TZ(datetime, '+00:00', @@session.time_zone))

o:

TIMESTAMPDIFF(SECOND,'1970-01-01 00:00:00',datetime)

Refs: 1, 2, 3, 4

Problemi correlati