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

Emulazione di TO_SECONDS() nelle versioni precedenti di MySQL (<5.5.0)

Innanzitutto, solo per essere sicuri, il nuovo campo sarà un BIGINT ... corretto?

Puoi utilizzare il casting esplicito per evitare l'overflow?

SELECT CAST(TO_DAYS(Timestamp)*86400 + TIME_TO_SEC(Timestamp) AS UNSIGNED INTEGER)

O forse usa una stringa intermedia prima di popolare il nuovo BIGINT campo?

SELECT CAST(TO_DAYS(Timestamp)*86400 + TIME_TO_SEC(Timestamp) AS UNSIGNED CHAR(11))