加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql – 选择datetime大于指定日期的记录

发布时间:2021-03-07 12:38:31 所属栏目:MySql教程 来源:网络整理
导读:问题 我试图通过运行下面提到的查询从date_time字段大于星期四,2013年7月11日的表中获取所有记录. date_time字段中的值以此格式存储=>星期四,2013年7月11日08:29:37任何帮助都会很棒. 字段date_time的数据类型是varchar 询问 SELECT * FROM table_name WHE

问题

我试图通过运行下面提到的查询从date_time字段大于’星期四,2013年7月11日’的表中获取所有记录. date_time字段中的值以此格式存储=>星期四,2013年7月11日08:29:37任何帮助都会很棒.

字段date_time的数据类型是varchar

询问

SELECT * FROM table_name 
WHERE username = 'mark@example.com' 
AND STR_TO_DATE(date_time,'%a,%e %b %Y %H:%i:%s') >= 'Thu,11 Jul 2013 00:00:00';
最佳答案 您正在尝试将日期与字符串进行比较.

str_to_date函数应用程序是正确的,但您没有与日期进行比较.

正确的方法是:

select * from yourTable
where STR_TO_DATE(date_time,%e %b %Y %H:%i:%s') >= '2013-07-11 00:00:00'

请注意,日期格式为YYYY-MM-DD HH:mm:ss(这是MySQL的默认日期格式).

当然,您也可以与str_to_date结果进行比较:

... where STR_TO_DATE(date_time,%e %b %Y %H:%i:%s') >= STR_TO_DATE('Thu,11 Jul 2013 00:00:00',%e %b %Y %H:%i:%s')

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读