Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何处理mysql中的非标准日期格式?_Mysql_Date - Fatal编程技术网

如何处理mysql中的非标准日期格式?

如何处理mysql中的非标准日期格式?,mysql,date,Mysql,Date,我收到一份报告,其中有几个字段设置为m/d/y hh:mm(是的,一个数字表示一个数字月份)。我不会在将来导入这些,所以我不希望依赖于更改输入文件。mysql如何适应这种格式,以便我可以进行日期查找和基于时间的查询 例如: 表a- 埃皮德 最后登录 如何使用lastlogin字段作为上述日期字段搜索本月登录的员工 MySQL函数str\u to\u date()非常灵活。尽管它似乎更喜欢MM/DD/YYYY格式,但它确实适用于M/D/YYYY 因此,您可以: select a.* from a

我收到一份报告,其中有几个字段设置为m/d/y hh:mm(是的,一个数字表示一个数字月份)。我不会在将来导入这些,所以我不希望依赖于更改输入文件。mysql如何适应这种格式,以便我可以进行日期查找和基于时间的查询

例如:

表a-

埃皮德

最后登录


如何使用lastlogin字段作为上述日期字段搜索本月登录的员工

MySQL函数
str\u to\u date()
非常灵活。尽管它似乎更喜欢MM/DD/YYYY格式,但它确实适用于M/D/YYYY

因此,您可以:

select a.*
from a
where str_to_date(lastlogin, '%m/%d/%Y') >= now() - interval 30 days;

但是,不应将日期作为字符串存储在数据库中。最好将它们存储为实际的
date
datetime
字段。您可以在加载数据时进行一次转换,然后就不必担心数据了。

MySQL具有处理日期的功能。这个问题似乎是离题的,因为它似乎没有显示任何研究成果。@草莓-很抱歉,我没有列出我尝试过的5-6件事情,但认为它们不相关。如果有人在读我的胡说八道之前就处理好了,那也没用。我以前也搜索过这个网站,没有看到这个。