Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

problema de comparação de data e hora varchar


As datas do Varchar são más e não são datas reais, a melhor solução é usar os tipos de dados de data nativos do mysql.

Como você não pode alterar o tipo de dados, você pode usar str_to_date() função e aqui como funciona
mysql> select str_to_date('01/08/2015','%d/%m/%Y') as d ;
+------------+
| d          |
+------------+
| 2015-08-01 |
+------------+

Portanto, a consulta para selecionar seria
select * from table_name
where
str_to_date(date_column,'%d/%m/%Y')
between
str_to_date('01/08/2015','%d/%m/%Y')
and
str_to_date('01/10/2015','%d/%m/%Y')