关于sql String类型的日期数据如何进行比较查询

今天下午在做员工考勤系统的时候,需要进行对两个日期之间的员工进行查询,但是String类型的日期不可比较,那么我们如何继续往下进行呢???

我们运用date_format把String数据库中的String 类型的日期格式化成datetime.

上代码::

select userinform.uid,userinform.uname,uworktime,ustate,unote,utime from note,userinform 
where note.uid = userinform.uid and 
date_format(utime,'%Y-%m-%d') 
BETWEEN str_to_date('2019-11-04', '%Y-%m-%d') AND str_to_date('2019-11-08', '%Y-%m-%d')

在sql语句中,我们需要先将数据库中的数据进行格式化,即上述代码第三行:

date_format(utime,'%Y-%m-%d') 

其中,utime是数据库中日期的字段。

接下来我们就可以将日期进行格式化然后进行比较了。

如果在jsp界面传值,jsp界面传递的值到servlet,那么上述代码快的第四行就不能进行直接赋值了。因该这样写:

date_format(utime,'%Y-%m-%d') 
BETWEEN str_to_date('"+start+"', '%Y-%m-%d') AND str_to_date('"+finaltime+"', '%Y-%m-%d')";
		

其中,start是从jsp界面传递过来,finaltime亦是。

                       **互相学习,共同进步**

版权声明:本文为qq_42978230原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。