2011-03-08 3 views
0
  1. У меня есть столбец даты для: 03/08/2011 & Мне нужно сделать это как конец дня, т.е. 03/08/2011 12:00:00 в формате UTC & затем добавьте некоторое целое значение в минутах, например: 10 (мин.) -> 03/08/2011 12:10:00. Это значение используется как конечное значение.Сравнение времени

  2. Там будет некоторое начальное значение, как напр: 03/07/2011 22:10:00 & мне нужно, чтобы получить текущее время даты в формате UTC, сделать сравнение, чтобы увидеть & возврата 1, если текущее время находится между датой start & Конечное значение else return 0.

  3. Все в одном запросе select в mysql.

Спасибо.

+1

Вы должны использовать фактический штамп даты, если вы хотите его в чистом SQL. '03/08/2011' ошибочно. '2011-03-08' является правильным. – drudge

+1

Ссылка: [11.7. Функции даты и времени] (http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html) –

+1

Можете ли вы показать некоторые данные, которые у вас есть, и образец того, что вы в целом ожидаете это должно выглядеть? – DRapp

ответ

0

Непонятно, что вам нужно, но я дам вам несколько конкретных примеров, которые должны помочь.

1) Преобразование/DD/строку YYYY MM к дате и добавив 10 минут к нему:

mysql> SELECT STR_TO_DATE('03/08/2011', '%m/%d/%Y') + INTERVAL 10 MINUTE; 
+------------------------------------------------------------+ 
| STR_TO_DATE('03/08/2011', '%m/%d/%Y') + INTERVAL 10 MINUTE | 
+------------------------------------------------------------+ 
| 2011-03-08 00:10:00          | 
+------------------------------------------------------------+ 
1 row in set (0.00 sec) 

2) Получение текущей метки времени в UTC:

mysql> SELECT UTC_TIMESTAMP(); 
+---------------------+ 
| UTC_TIMESTAMP()  | 
+---------------------+ 
| 2011-03-08 20:33:53 | 
+---------------------+ 
1 row in set (0.00 sec) 
+0

Спасибо, но мне нужно время, добавленное в utc time STR_TO_DATE ('03/08/2011 ','% m /% d /% Y ') + INTERVAL 10 MINUTE | + ------------------------------------------------ ------------ + | 2011-03-08 00:10:00 -> 00:10:00 в местное время, мне нужно время UTC. – Sharpeye500

+0

В каком часовом поясе вы находитесь? -12: 00? Вы можете использовать 'CONVERT_TZ()' для преобразования формы своего часового пояса в UTC. Например, 'select convert_tz (STR_TO_DATE ('03/08/2011 ','% m /% d /% Y '),' - 12:00 ',' + 00:00 ') + интервал 10 минут;' –

+1

Вам даже не нужно использовать TZ: возьмите совет Ike и используйте «SYSTEM» как ваш TZ: 'select convert_tz (STR_TO_DATE ('03/08/2011 ','% m /% d /% Y '), 'SYSTEM', '+ 00:00') + интервал 10 минут' – Galz

Смежные вопросы