0

我是数据库开发的新手,目前正在使用 MySQL。我有一列包含美国的所有时区。我希望能够获取每行中每个时区的当前时间(只有时间,没有日期)。

时区数据如下所示:+05:00、-03:00 等等等等

这就是我尝试过的方式。我有两张桌子,一个国家,一个城市。时区位于“城市”表中。我尝试使用函数 sys date() 但它返回我系统上的完整日期和当前时间,而不是基于时区。谁能帮我吗?非常感谢

 select TimeZone, Country, sysdate() as "Current Time"  
 from city, country 
 where Country='USA' and city.CountryId= country.CountryId;
4

1 回答 1

1

您应该能够使用convert_tz函数:

SELECT CONVERT_TZ(NOW(),'-07:00', city.TimeZone) AS Time, city.Name
    FROM city, country 
    WHERE country.Name='USA' and city.CountryId= country.CountryId;

假设您的服务器位于 -07:00 时区。

于 2012-10-10T03:22:07.397 回答