mysql日期时间字段
我正在解析包含“created at”条目的提要,其格式如下:mysql日期时间字段,sql,mysql,datetime,Sql,Mysql,Datetime,我正在解析包含“created at”条目的提要,其格式如下: Thu, 08 Oct 2009 23:01:33 +0000 我需要能够以DateTime数据类型将其存储在MySQL表中。然后,我想选择行WHEREdatetime子句等于或在日期和/或时间之间 我有两个问题: 此字符串是否可以作为MySQL日期时间数据类型接受 如果是,我应该构造哪个查询来从日期或小时之间获取结果 MySQL将接受以下格式的字符串作为 YYYY-MM-DD HH:MM:SS SELECT * FROM tb
Thu, 08 Oct 2009 23:01:33 +0000
我需要能够以DateTime数据类型将其存储在MySQL表中。然后,我想选择行WHERE
datetime子句等于或在日期和/或时间之间
我有两个问题:
MySQL将接受以下格式的字符串作为
YYYY-MM-DD HH:MM:SS
SELECT * FROM tbl WHERE datestamp = '2009-10-08 23:01:33';
MySQL将接受以下格式的字符串作为
YYYY-MM-DD HH:MM:SS
SELECT * FROM tbl WHERE datestamp = '2009-10-08 23:01:33';
您可以在mysql中找到用于日期解析的函数
mysql> SELECT STR_TO_DATE('Thu, 08 Oct 2009 23:01:33 +0000', '%a, %d %b %Y %H:%i:%s +0000');
-> '2009-10-08 23:01:33'
可用格式与相同,您可以在mysql中找到用于日期解析的函数
mysql> SELECT STR_TO_DATE('Thu, 08 Oct 2009 23:01:33 +0000', '%a, %d %b %Y %H:%i:%s +0000');
-> '2009-10-08 23:01:33'
可用的格式与相同,您可以按照以下方式(使用您选择的语言)将字符串转换为可接受的mysql日期时间:
$inputdate = "Thu, 08 Oct 2009 23:01:33 +0000";
$unixdate = strtotime($inputdate); //output: 1255042893
$datetime = date("Y-m-d H:i:s", $unixdate); //output: 2009-10-08 23:01:33
有几种方法可以找到两个日期之间的记录,这是我最喜欢的:
SELECT * FROM table WHERE date >= '2009-07-01 00:00:00' and date <= '2009-10-31 23:59:59'
SELECT*FROM table WHERE date>='2009-07-01 00:00:00'和date您可以按照以下方式(使用您选择的语言)将字符串转换为可接受的mysql日期时间:
$inputdate = "Thu, 08 Oct 2009 23:01:33 +0000";
$unixdate = strtotime($inputdate); //output: 1255042893
$datetime = date("Y-m-d H:i:s", $unixdate); //output: 2009-10-08 23:01:33
有几种方法可以找到两个日期之间的记录,这是我最喜欢的:
SELECT * FROM table WHERE date >= '2009-07-01 00:00:00' and date <= '2009-10-31 23:59:59'
SELECT*FROM table WHERE date>='2009-07-01 00:00:00'和date如果您使用php,那么我认为您可以使用strottime()转换为时间戳,然后转换为mysql数据时间格式。如果您使用php,那么我认为您可以使用strottime()转换为时间戳,然后转换为mysql数据时间格式。Delilah,谢谢你的回答,我听从了你的指示,出于某种原因,我得到的是“2009-10-31 01:01:33”而不是“2009-10-31 23:01:33”,你知道为什么吗?嗯。。假设您的date()格式和日期本身的来源都是正确的,接下来我要看的是时区的趣味性。如果还没有,请尝试在文件开头定义时区,如:date\u default\u timezone\u set(“GMT”);黛利拉,谢谢你的回答我按照你的指示做了,出于某种原因我得到了“2009-10-31 01:01:33”而不是“2009-10-31 23:01:33”你知道为什么吗?嗯。。假设您的date()格式和日期本身的来源都是正确的,接下来我要看的是时区的趣味性。如果还没有,请尝试在文件开头定义时区,如:date\u default\u timezone\u set(“GMT”);