2014-04-24 291 views
-1

我有两个textfields代表startDate和endDate.Now我面对的问题是我想要从该间隔发生的数据库中的所有记录。但存储日期的字段是TimeStamp是格式:开始日期与结束日期之间的记录

24-APR-14 09.23.44.458000 PM or we can say dd-mm-yy hh.min.ss.milli AM/PM 

现在很明显,用户在输入的日期是不会在这样的format.So进入它应该是什么查询,用于选择表中记录说这个日​​期之间的间隔T1。

+0

在date1和date2之间使用BETWEEN关键字 – ambarox

+0

这些字段的数据类型是什么?如果他们是日期时间,你可以使用'BETWEEN'关键字。 – Siyual

+0

你之所以陷入低谷是因为这个问题没有表现出足够的努力,而且也不太清楚。 – eivamu

回答

-1

用户输入将有一个开始日期和结束日期一可能是日期时间或日期变量

,而试图在WHERE子句中使用使用这两个输入变量之间CAST(@StartDate AS DATE)AND(CAST(@结束日期AS DATE)+ 1)

这将访存在于两个日期结果和数据范围以及

1

保存日期数据,日期或日期时间让生活变得简单。 你已经在问题中标记了Mysql,所以这里是一个Mysql解决方案。

这是你可以做什么

select * from 
test 
where 
date_format(str_to_date(`date`,'%d-%b-%y'),'%Y-%m-%d') 
between '2014-04-15' AND '2014-04-24' 

DEMO

如您在查询想在DATE_FORMAT可以格式化用户输入()。

+0

日期类型是TIMESTAMP而不是字符串。所以请帮助 – user3569648

+0

更新演示并添加您的数据并在更新记录后发布链接和桌子。 –

+0

该演示没有选择作为TIMESTAMP的数据类型。我的方式使用oracle 10g – user3569648

相关问题