目前我有一个查询,我根据当前日期和当前时间检查数据:
SELECT ...
FROM ...
WHERE ...
AND DATE(event_date ) = '".$cur_date."'
AND event_time > '" . $cur_time . "'
,其中
$cur_date = date('Y-m-d');
$cur_time = date('H:i');
但是,我们刚刚在db表中添加了一个包含UTC时间偏移量的列,以分钟为单位,当前:-300
我需要调整查询以反映调整。不太确定如何在mySQL中做到这一点。在PHP中我只是做这样的事情:
date('g:i A', strtotime($event_date) + ($offset_time * 60));
我的数据库位于不同的服务器上。知道它与我的用户位置的相对时间的唯一方法是通过UTC时间偏移。
答案 0 :(得分:0)
使用MySQL CURDATE(),CURTIME()
SELECT FROM table
WHERE
AND DATE(event_date) = CURDATE()
AND event_time > CURTIME()
答案 1 :(得分:0)
首先设置mysql的时区: -
SET GLOBAL time_zone = '+5:00';//your time_zone
SET GLOBAL time_zone = 'Europe/Helsinki';//your time_zone name
SET @@global.time_zone='+00:00';