【发布时间】:2012-12-19 04:05:30
【问题描述】:
我创建了一个用户提交的简单表单。一切都很好,但我最近发现
SELECT * FROM `Forms` WHERE `Date` BETWEEN '{$startDate}' AND '{$endDate}'
列Date 是类型TEXT。我需要它是文本,因为我认为以MM/DD/YY 格式显示所有内容会更容易。现在我不想冒险更改数据类型,因为表单工作正常。
日期列示例
01-03-2013
01-04-2013
07-25-2012
08-01-2012
08-01-2012
08-01-2012
08-01-2012
工作查询的示例
SELECT * FROM `Forms` Where `Date` Between '01-08-2012' and '12-12-2012'
查询不工作的例子
SELECT * FROM `Forms` Where `Date` Between '01-08-2012' and '01-04-2013'
如果年份改变,它会损坏的任何原因?即使年份发生变化,我怎样才能让它工作。
【问题讨论】:
-
因为它是文本 01-04.... 在 01-08 之前......将其转换为日期