Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.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
Php 在MySQL中如何将日期和时间从DATETIME中分离出来_Php_Mysql_Sql_Datetime - Fatal编程技术网

Php 在MySQL中如何将日期和时间从DATETIME中分离出来

Php 在MySQL中如何将日期和时间从DATETIME中分离出来,php,mysql,sql,datetime,Php,Mysql,Sql,Datetime,我正在表中存储一个日期时间字段。每个值如下所示: 2012-09-09 06:57:12 我使用以下语法: date("Y-m-d H:i:s"); 现在我的问题是,在获取数据时,如何使用单个MySQL查询分别获取日期和时间 日期如2012-09-09和时间如06:57:12您可以使用实现这一点(单击链接了解更多其他格式) 尝试: 根据mysql文档,DATE()函数将提取datetime字段的日期部分,TIME()将提取时间部分。因此,我会尝试: select DA

我正在表中存储一个日期时间字段。每个值如下所示: 2012-09-09 06:57:12

我使用以下语法:

   date("Y-m-d H:i:s");
现在我的问题是,在获取数据时,如何使用单个MySQL查询分别获取日期和时间


日期如2012-09-09和时间如06:57:12

您可以使用实现这一点(单击链接了解更多其他格式)

尝试:


根据mysql文档,DATE()函数将提取datetime字段的日期部分,TIME()将提取时间部分。因此,我会尝试:

select DATE(dateTimeField) as Date, TIME(dateTimeField) as Time, col2, col3, FROM Table1 ...
仅限日期使用
日期(“Y-m-d”)

仅限时间使用
日期(“H:i:s”)

简单地说,

选择时间(列名称)、日期(列名称)

这不会仅根据用户的要求获取日期和时间。它将给出带有默认值的整个日期和时间。它将为日期生成
2012年9月00:00:00-0400
,为时间井生成
1970年1月01日03:20:38-0500
,根据查询,它将2012-09-09作为日期部分,06:57:12作为时间部分mysql@Sudhir..Thanks回复的内容很多。这也是正确的,但是..使用
DATE\u FORMAT()
会使您更灵活。@misssrosy欢迎,是的,您应该使用最适合的、更灵活的解决方案:)嗨,如何获取值??我可以使用
echo DATEONLY
打印日期,使用
echo TIMEONLY
打印时间吗??或者什么???@MissRosy是的,您可以使用他们的别名(例如DATEONLY和TIMEONLY)来获取所需的值。@MissRosy@MissRosy不客气。最好的办法是你可以把它格式化成你想要的任何形式。@John..是的..我喜欢这件事:)可能你在找的是
DATE\u format
而不是
DATE
TIME
,因为如果你在找时间,它会给你默认日期,如果你在找日期,它会给你默认时间,请看下面我的答案。嘿,你给出的是php而不是sql的解决方案:)那么
DATE
呢?很高兴知道这方面的比较工作与预期相符,例如
SELECT*FROM sales WHERE TIME(sale_at_utc)>='12:00:00'-在中午后记录销售额,无论日期如何。
SELECT DATE(`date_time_field`) AS date_part, TIME(`date_time_field`) AS time_part FROM `your_table`
select DATE(dateTimeField) as Date, TIME(dateTimeField) as Time, col2, col3, FROM Table1 ...