sql >> Databasteknik >  >> RDS >> Mysql

Emulerar TO_SECONDS() i äldre versioner av MySQL (<5.5.0)

För det första, bara för att vara säker, kommer det nya fältet att vara en BIGINT ... rätt?

Kan du använda explicit ingjutning för att förhindra översvämning?

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

Eller kanske använd en mellansträng innan du fyller i den nya BIGINT fältet?

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



  1. Hur man infogar Emoji (UTF8 4 Byte-tecken) i MySQL <5.5

  2. START TRANSACTION inuti BEGIN ... END kontext eller utanför och LOOP-syntax

  3. SQL LIKE % inuti array

  4. MySQLi förberedde felrapportering för uttalanden