Mysql
 sql >> Base de données >  >> RDS >> Mysql

aidez-moi à comprendre now() pour l'heure actuelle de mysql et ses fuseaux horaires

now() fait toujours référence à l'heure du serveur à partir de son fuseau horaire.

Si vous avez à la fois le fuseau horaire du serveur et de l'utilisateur,
cela peut être fait via la fonction convert_tz ,
comme

set @user_time_zone:='+02:00';
set @server_time_zone:='+08:00';

-- server timezone always come first
-- as now() is from server time
SELECT CONVERT_TZ(now(),@server_time_zone, @user_time_zone);