2015-01-28 2 views
0

У меня есть следующий запрос:MySql: Создание DateTime из года и месяца

SELECT count(*) as 'count' 
    FROM myTable 
    WHERE myDateTime >= DATE1 AND myDateTime < DATE2 

- myDateTime имеет тип DateTime (2013-01-30 08:48:13) в myTable.
- DATE1 и DATE2 должны быть созданы как DateTime также, чтобы я мог сравнить их, как это:

- DATE1 должен быть создан из года (например, 2013) и месяц (например, 01) параметров, и на следующий день должен быть всегда 01 (первый день месяца)
- DATE2 должен быть таким же, как DATE1 с добавленным месяцем. (Если DATE1 является 2013-01-01 00:00:00 то DATE2 должен быть 2013-02-01 00:00:00)

ответ

2

Вы можете создать дату как число, а затем преобразовать его в дату:

where myDateTime >= date(@year * 10000 + @month * 100 + 1) and 
     myDateTime < date_add(date(@year * 10000 + @month * 100 + 1), interval 1 month) 
Смежные вопросы