Как выбрать строку больше, чем мм / гг, если строка, отформатированная в мм / гг в MySQL

0

У меня есть столбец с именем exp_date а дата - mm/yy. т.е.: 07/17. Я хочу выбрать все строки, где exp_date больше, чем 07/17

Пожалуйста, будьте информированы о том, что тип exp_date - varchar (6)

  • 0
    17/7 какого года?
  • 0
    @AdamP AdamP 17 год. как он объяснил: мм / гг
Показать ещё 11 комментариев
Теги:

1 ответ

2
Лучший ответ

У вас есть строковый формат, вам нужно преобразовать его в формат даты, чтобы сравнить его:

CREATE TABLE T (
    m varchar(5)
);

insert into t values 
('06/17'), 
('07/17'), 
('08/17'), 
('09/17'), 
('10/17');

select * 
from t
where str_to_date(m, '%m/%y') > str_to_date('07/17', '%m/%y');

Посмотрите, как это работает: http://sqlfiddle.com/#!9/37c425/2

  • 0
    Genius. Огромное спасибо
  • 0
    Вы можете проверить это, пожалуйста? sqlfiddle.com/#!9/286f00/1
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню