我已将服务器的时区设置为 UTC。我的用户可以选择他们自己的时区,例如 UTC+2 等。我创建了一个查询来指示班次何时打开或关闭:
SELECT DAYNAME(NOW()), start_day
FROM Shifts
WHERE (start_day = LOWER(DAYNAME(NOW()))
AND start_time < CURTIME()
AND end_time > CURTIME())
OR (start_day = LOWER(DAYNAME(DATE_SUB(NOW(), INTERVAL 1 DAY)))
AND start_time < ADDTIME('24:00:00', CURTIME())
AND end_time > ADDTIME('24:00:00', CURTIME()))
我想更改此查询 NOW() 和 CURTIME() 以匹配每个用户的设置。我应该如何更改我的查询,以在其中注入自定义 UTC?还有另一种方法来完成我需要的吗?