当我选择使用date
格式时,它正在工作,例如:
select *
from driverdetails
where licenserenewaldate between '2015-01-27' and '2015-02-27'
当我使用varchar
或text
(27-01-2015)
时,它无法检索。
select *
from driverdetails
where licenserenewaldate between '27-01-2015' and '27-02-2015'
它不起作用。它显示空值。
答案 0 :(得分:1)
如果您正在使用POST或GET请求提交要过滤的数据,则可以先使用strtotime()
函数,然后再将其包含在查询中。
查看此strtotime manual。
通过执行以下操作格式化yyyy-mm-dd
中的数据:
$yourDateData=date('Y-m-d',strtotime($yourDateData));
您可以参考here了解更多日期格式。
答案 1 :(得分:0)
你应该使用以下内容,我希望你能得到你想要的结果
select *
from driverdetails
where licenserenewaldate between str_to_date('27-01-2015','%d-%m-%Y') AND
str_to_date('27-02-2015','%d-%m-%Y')