2015-12-01 2 views
2

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

date  time 
2015-11-27 10:55:04 
2015-11-27 11:16:38 
2015-11-27 11:57:29 
2015-11-27 13:04:47 
2015-11-27 14:29:00 
2015-11-27 14:36:41 
2015-11-27 14:52:46 
2015-11-27 15:06:20 
2015-11-27 15:30:24 
2015-11-27 15:47:15 

Можно ли преобразовать это в метку время для того, чтобы сделать выбор я хочу по этому методу: select rows from last 2 hours

спасибо!

+2

Что вы пробовали ГНФАР? И каковы типы данных столбца даты и времени? – deterministicFail

+0

1. (Очевидно) Рассмотрим дату и время хранения как единое целое – Strawberry

+0

Ваша строка поиска google - это функции mysql date. –

ответ

4

Я думаю, что смогу решить проблему самостоятельно. Спасибо за ваши намеки.

SELECT * 
FROM recs 
WHERE TIMESTAMP(`datefield`,`timefield`) BETWEEN DATE_SUB(NOW(), INTERVAL 1 HOUR) AND NOW(); 
1

Просто хочу поделиться наоборот,

SELECT 
     * 
FROM 
     <tablename> 
WHERE 
     CAST(CONCAT(datecolumn,' ',timecolumn) AS DATETIME) > SUBDATE(NOW(), INTERVAL 1 HOUR); 
Смежные вопросы