Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Emulieren von TO_SECONDS() in älteren Versionen von MySQL (<5.5.0)

Erstens, nur um sicherzugehen, dass das neue Feld ein BIGINT sein wird ... richtig?

Können Sie das explizite Casting verwenden, um den Überlauf zu verhindern?

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

Oder verwenden Sie vielleicht eine Zwischenzeichenfolge, bevor Sie den neuen BIGINT füllen Feld?

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