mysql 日期在数据库中用char(14)来存储 取的时候怎么比较时间大小
3个回答
推荐于2016-10-15
展开全部
1.首先,把读取出来的值转换成DateTime类型,因为字符串不能比较大小
DateTime dTimeDB1 = Convert.todateTime(数据库中的值);
DateTime dTimeDB2 = Convert.todateTime(数据库中的值);
2.然后,再进行比较
使用比较方法:
if(DateTime.Compare(dTimeDB1 ,dTimeDB2) > 0)
说明:dTimeDB1 > dTimeDB2即dTimeDB1 是晚于dTimeDB2的时间
当然也可以不使用比较方法,而直接比较时间大小,就像比较数值一样
DateTime dTimeDB1 = Convert.todateTime(数据库中的值);
DateTime dTimeDB2 = Convert.todateTime(数据库中的值);
2.然后,再进行比较
使用比较方法:
if(DateTime.Compare(dTimeDB1 ,dTimeDB2) > 0)
说明:dTimeDB1 > dTimeDB2即dTimeDB1 是晚于dTimeDB2的时间
当然也可以不使用比较方法,而直接比较时间大小,就像比较数值一样
展开全部
数据库sql查询中直接比较大小就可以了,字符串也是可以比较的,如果不放心用str_to_date
比如str_to_date('20121231142356','%Y%m%d%H%i%s');可以吧这个14位数的字符串变成日期类型
再比如A,B两个表中都有一个字段x的长char(14)的日期格式
比较A的日期大于B可以用
select …………where str_to_date(A.x,'%Y%m%d%H%i%s)>str_to_date('B.x,'%Y%m%d%H%i%s)
比如str_to_date('20121231142356','%Y%m%d%H%i%s');可以吧这个14位数的字符串变成日期类型
再比如A,B两个表中都有一个字段x的长char(14)的日期格式
比较A的日期大于B可以用
select …………where str_to_date(A.x,'%Y%m%d%H%i%s)>str_to_date('B.x,'%Y%m%d%H%i%s)
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
第一,时间用Char(14)的话不能直接比较,
第二,应该吧Char(14)类型转化为Datetime类型在用比较运算符进行比较,这样就能达到你说要的结果。
第二,应该吧Char(14)类型转化为Datetime类型在用比较运算符进行比较,这样就能达到你说要的结果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询