有没有办法将当前日期与以 VARCHAR 格式存储在数据库中的日期进行比较?
Posted
技术标签:
【中文标题】有没有办法将当前日期与以 VARCHAR 格式存储在数据库中的日期进行比较?【英文标题】:Is there a way to compare current date with date stored in database in VARCHAR format? 【发布时间】:2013-03-02 11:09:54 【问题描述】:我有一组日期,我以 varchar 格式存储在我的数据库中。我使用 Varchar 的原因是因为我使用 jquery datepicker。
有没有办法让我将日期与当前日期进行比较。
【问题讨论】:
可能重复***.com/questions/5619202/… @AshReva 我不确定那是重复的。我想将当前日期与我存储在数据库中的日期进行比较 如何以 varchar 格式存储日期?给我样品 【参考方案1】:您可以尝试使用datejs library。
您可以使用Date.parse
解析您的字符串,然后使用Date.compare
来比较两个日期。
$.get('date.php', function(date)
alert(Date.compare(Date.today(), Date.parse(date));
);
【讨论】:
您可以添加更多内容吗?在这一点上,它应该是评论而不是答案。我什至看不出它与问题有什么关系。【参考方案2】:您可以使用 getDate、getMonth 和 getFullYear 来获取存储在 varchar 和 current 中的日期的日期、月份和年份,并分别进行比较。该解决方案不是那么优雅,但会起作用。
var dt = new Date('2011-01-11'); //replace this hard coded date with one from database
var todaydate = new Date() //todays date
//i have added +1 in getMonth as its index start from 0. so if month is Jan then it returns 0 instead of 1. Hence i added +1
if (dt.getDate() == todaydate.getDate() && dt.getMonth()+1 == todaydate.getMonth()+1 && dt.getFullYear() == todaydate.getFullYear())
alert('match');
else
alert('not match');
也可以看到这个小提琴here
【讨论】:
以上是关于有没有办法将当前日期与以 VARCHAR 格式存储在数据库中的日期进行比较?的主要内容,如果未能解决你的问题,请参考以下文章
SQL - 日期存储为 varchar 但格式化为 Julian Date