我有一个类似于' ddmmyyyy'像我的datebase中的这种格式,它的数据类型也是varchar(8)现在我需要比较查询之间的日期
我的表数据是
| id | enquiry_date | dept_name |
|----------------------------------------|
| 1 | 02112004 | LAB |
| 2 | 31122005 | RESEARCH |
| 3 | 26052005 | LAB |
| 4 | 16042006 | RESEARCH |
现在我需要记录05-02-2005至12-11-2006这样的记录。在这里它的varchar如何比较它请提前帮助我。
答案 0 :(得分:3)
您可以尝试使用STR_TO_DATE
STR_TO_DATE(enquiry_date,'%d%m%Y')
所以你可以比较像
where date_format(STR_TO_DATE(enquiry_date,'%d%m%Y'), '%d-%m-%Y') > '05-02-2005'
and date_format(STR_TO_DATE(enquiry_date,'%d%m%Y'), '%d-%m-%Y') < '12-11-2006'