Сравнение дат по значению столбца VARCHAR

У меня есть таблица SQL, где один из столбцов «Создатель» тип данных VARCHAR В этом столбце хранятся значения, подобные этому: Mike Jones|05-17-2015 1:21 pm состоящий из человека, который создал запись, дату и время ее создания.

Мне нужно использовать Дата часть этих данных varchar для формирования запроса SQL, чтобы мы могли сгенерировать список заявок, созданных между двумя датами. Мы не можем легко реструктурировать таблицу, поэтому я застрял, работая над этим в текущем формате, иначе мы просто добавили бы поле даты CREATED и сравнили бы его.

SQL-запрос заключается в следующем:
SELECTticknumb,CNAMEs,создатель,ticktype,tickstatusFROMaticketsWHEREсоздатель>= '%05-24-2015%' ANDсоздатель<= '%05-30-2015%' ANDtickstatusNOT LIKE 'Closed,Complete'

Есть ли способ сделать это непосредственно в запросе SQL без необходимости сначала зацикливаться в php, чтобы извлечь и сравнить самые ранние / самые поздние даты?

0

Решение

Вот фрагмент SQL, как вы можете преобразовать свое значение в столбце varchar в тип даты.

SELECT STR_TO_DATE(SUBSTRING_INDEX(`creator`, '|', -1), '%m-%d-%Y %h:%i %p')

http://sqlfiddle.com/#!9/710a2/7/0

Еще одно вдохновение

Как преобразовать строку в дату в MySQL?

Как разбить строку имени в MySQL?

Я надеюсь, что это то, что вы ищете.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]