Я просто не могу найти способ добиться этого. Я в основном хочу получить записи того же года в базе данных. Поле является полем DATETIME
, поэтому с ним легко выполнять вычисления.
Моя проблема в том, что я не хочу указывать год: он должен автоматически использовать год, ближайший к настоящему времени. Все даты указаны в будущем, но иногда в этом году больше не осталось записей, поэтому он должен автоматически выбрать следующую доступную.
Я почти наверняка знаю, что есть решение с условными операторами, но я недостаточно хорошо понимаю синтаксис, чтобы реализовать его. Я бы хотел уже что-то сделать, но все, что я знаю, это то, что я должен использовать INTERVAL
, который отлично работает, когда у меня есть год, но этого недостаточно для этого случая.
SELECT date
FROM table WHERE
date > (NOW() + INTERVAL 1 YEAR)
Может ли кто-нибудь помочь мне здесь?
2013-01-01
? Я считаю, что результаты должны быть отфильтрованы только до (и включительно)2012-12-31
. 12.02.20122013-01-01 00:00:00
, одну секунду от следующей даты. Обычно лучше дать ОП не полный ответ, а основную идею, как реализовать то, что он хочет. 12.02.2012BETWEEN
включать или исключать записи, попадающие в границу, уместно правильно их направить. Люди здесь, чтобы учиться, и их нельзя учить незаконченным урокам. 13.02.20122013-01-01
не будет, а будет только одна секунда изDec 31st
дня 13.02.2012