Выберите из mysql по дням с разными часовыми поясами (php) - PullRequest
4 голосов
/ 20 марта 2010

Я храню интересы в базе данных, и у каждого из них есть поле даты и времени с датой и временем на основе часового пояса PST.

Я хочу, чтобы мой пользователь мог отображать все лиды с определенной даты (например, сегодня, вчера) и выбирать часовой пояс.

например. если я хочу просмотреть все потенциальные возможности, которые были сгенерированы вчера в часовом поясе EST, мне нужно сначала преобразовать (или прочитать) все значения даты и времени в EST, а затем выбрать только тех, кто находится в целевом диапазоне (вчера).

Какой лучший способ сделать это?

1 Ответ

2 голосов
/ 20 марта 2010

Вы можете использовать функцию MySQL Convert_TZ (dt, from_tz, to_tz) .

* 1005 Е.Г. *

SELECT CONVERT_TZ('2010-03-20 12:00:00', 'EST', 'PST8PDT')

возвращает 2010-03-20 10:00:00

edit: чтобы выбрать все записи, которые "сегодня в EST", вы можете использовать что-то вроде

SELECT
  x,y,z
FROM
  foo
WHERE
  dt >= CONVERT_TZ(CURDATE(), 'EST', 'PST8PDT')
  AND dt < CONVERT_TZ(CURDATE(), 'EST', 'PST8PDT')+Interval 1 day
...