2012-05-15 4 views
0

привет я пытаюсь получить ближайшую дату здесь мой кодПолучить Closest даты в PHP

SELECT schedule_date FROM schedule_table WHERE schedule_date > '2012-06-07' and event_id='23' ORDER BY schedule_date ASC 
     LIMIT 1 

здесь фактическая таблица schedule_date содержат 2012-06-07 00:00:00 как this.But я Проверить «2012 -06-07' так

я получить такой вывод 2012-06-07 06:53:57, что означает пришел тот же день, но мне нужно 2012-06-08 04:53:57 я думаю, что здесь мы должны проверить это условие с помощью оператора, как

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

+1

Вопрос не ясен. Что такое вход? Каков желаемый результат? Что вы получаете вместо этого? –

+0

Зачем вам нужен оператор в поле даты? Это поле даты, а не строка. Вы пытаетесь найти дату, ближайшую к дате, предоставленной вам в прошлом или в будущем? – Recognizer

+0

, когда указанная дата является строкой, пользователь присылает мне текущую дату только не время, так как я могу проверить это условие –

ответ

1

У вас есть классический случай соответствия значению даты с типом поля даты и времени. То, что вам нужно, - это самое раннее значение времени в пределах одной даты. Возможно, ваши данные содержат несколько строк с данными той же даты, но разные значения времени. Вы должны использовать следующее: функция

SELECT schedule_date FROM schedule_table WHERE date(schedule_date) >= '2012-06-07' and event_id='23' ORDER BY schedule_date ASC 
     LIMIT 1 

Дата() объясняется в MySQL документации here.

+0

привет большое спасибо, что он работает –

+0

Приветствую вас! – somnath

2

запросов: сортировка по дате, больше/равно 2012-06-07, ограничение 1

запись должны быть возвращены нужная строка

Примечание: Не используйте LIKE оператора. Здесь нет необходимости, поскольку он предназначен для поиска текстовых совпадений в заданной строке. Это явно не то, что пытается выполнить ваш запрос.

+0

OP need LIKE оператор ... –

+0

в вышеуказанном запросе мне нужна дата больше –

+1

@FahimParkar OP считает, что им нужен оператор 'LIKE', но они определенно делают * not *. – MetalFrog

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