PHP从数据库中获取datetime而不需要小时/分钟?

PHP从数据库中获取datetime而不需要小时/分钟?,php,mysql,sql,Php,Mysql,Sql,如何从数据库中获取日期时间,但却没有小时和分钟? 数据库中的格式例如2016-03-28 15:55:00如果我键入SQL格式y-m-d,我希望得到此记录。您可以使用以下SQL语句: SELECT date(dateTime) From table 您可以使用以下SQL语句: SELECT date(dateTime) From table 您还没有提到您正在使用的RDBMS。我认为它必须是MySQL或SQL Server MySQL: 以下是手册中的说明: 您可以这样使用它(如图所示):

如何从数据库中获取日期时间,但却没有小时和分钟?
数据库中的格式例如2016-03-28 15:55:00如果我键入SQL格式y-m-d,我希望得到此记录。

您可以使用以下SQL语句:

SELECT date(dateTime) From table

您可以使用以下SQL语句:

SELECT date(dateTime) From table

您还没有提到您正在使用的RDBMS。我认为它必须是MySQL或SQL Server

MySQL:

以下是手册中的说明:

您可以这样使用它(如图所示):

这将给您带来:
2003-12-31

希望这有帮助

EDIT:我知道您希望对其应用过滤(即
WHERE
子句)。这是你可以做到的唯一方法。

您可以使用以下选项:

SELECT DATE(COLUMN_NAME)
FROM TABLE_NAME
WHERE DATE_FORMAT(COLUMN_NAME, '%Y %m %d') = DATE_FORMAT('2016-03-28', '%Y %m %d')
您可以在这里的小提琴上查看->


希望这有帮助

您没有提到您正在使用的RDBMS。我认为它必须是MySQL或SQL Server

MySQL:

以下是手册中的说明:

您可以这样使用它(如图所示):

这将给您带来:
2003-12-31

希望这有帮助

EDIT:我知道您希望对其应用过滤(即
WHERE
子句)。这是你可以做到的唯一方法。

您可以使用以下选项:

SELECT DATE(COLUMN_NAME)
FROM TABLE_NAME
WHERE DATE_FORMAT(COLUMN_NAME, '%Y %m %d') = DATE_FORMAT('2016-03-28', '%Y %m %d')
您可以在这里的小提琴上查看->

希望这有帮助

您可以在
where
子句中使用
date()

where date(col) = '2016-03-28'
或者,出于性能原因(因为引擎可以使用索引(如果可用)),什么更好

其中日期>='2016-03-28'和
日期<日期添加('2016-03-28',间隔1天)
您可以在
where
子句中使用
date()

where date(col) = '2016-03-28'
或者,出于性能原因(因为引擎可以使用索引(如果可用)),什么更好

其中日期>='2016-03-28'和
日期<日期添加('2016-03-28',间隔1天)

使用MySQL的
DATE()
函数
选择DATE(datetime\u列)作为表中的日期
hmm not working。。从表中选择日期(列),其中column='2016-03-28'使用MySQL的
DATE()
函数
选择日期(datetime\u列)作为表中的日期
hmm不工作。。从column='2016-03-28'Ya所在的表中选择日期(column),但我必须使用条件where,例如从column='Y-m-d'所在的表中选择日期(column)。值得注意的是,您应该尽可能使用PHP进行日期格式化,并对所有其他内容使用MySQL原生格式。格式化是一个表示问题,不应该在数据库代码中进行,只应该在最终呈现的PHP.Ya中进行,但我必须使用条件where,例如选择日期(列)从表中,column='Y-m-d'值得注意的是,您应该尽可能使用PHP进行日期格式化,并使用MySQL原生格式进行其他所有操作。格式化是一个表示问题,不应在数据库代码中进行,而应仅在执行最终呈现的PHP中进行。