select
convert_timezone('America/Los_Angeles', CURRENT_TIMESTAMP()),
convert_timezone('America/Chicago', CURRENT_TIMESTAMP()),
timediff(hour,
convert_timezone('America/Los_Angeles', CURRENT_TIMESTAMP()),
convert_timezone('America/Chicago', CURRENT_TIMESTAMP())
) as a;
前两列显示时间相差2小时,但最后一列总是显示0,为什么?
答案 0 :(得分:0)
convert_timezone 不会改变基础值,例如格林威治标准时间午夜是格林威治标准时间午夜,无论您在哪个时区。从洛杉矶更改为芝加哥不会使存储的物理值增加 2 小时 - 因此无论您选择显示哪个时区,两个相同时间之间的时差始终为 0他们在