Как объединить дату и время из разных столбцов MySQL для сравнения с полным DateTime?

Столбец d - ДАТА, столбец t - время, столбец v - это, например, INT. Допустим, мне нужны все значения, записанные после 15:00 1 февраля 2012 г. и далее. Если я напишу

SELECT * FROM `mytable` WHERE `d` > '2012-02-01' AND `t` > '15:00'

, все записи, сделанные до 15:00 в любой день, будут исключены из набора результатов (как и все, сделанные в 2012-02-01), пока я хочу их увидеть. Кажется, было бы легко, если бы был один столбец DATETIME, но в моем случае вместо этого есть отдельные столбцы для даты и времени.

Лучшее, что я сейчас вижу, это что-то вроде

SELECT * FROM `mytable` WHERE `d` >= '2012-02-02' OR (`d` = '2012-02-01' AND `t` > '15:00')

Есть идеи получше? Может, в MySQL есть функция для этого? Разве что-то вроде

SELECT * FROM `mytable` WHERE DateTime(`d`, `t`) > '2012-02-01 15:00'

невозможно?

9
задан Ivan 8 February 2012 в 03:21
поделиться