如何从数据库获取日期时间但没有时间和分钟? 数据库中的格式,例如2016-03-28 15:55:00如果我输入SQL格式y-m-d,我想得到这条记录。
答案 0 :(得分:2)
您可以在date()
子句中使用where
:
where date(col) = '2016-03-28'
或者,出于性能原因更好(因为引擎可以使用索引):
where date >= '2016-03-28' and
date < date_add('2016-03-28', interval 1 day)
答案 1 :(得分:1)
您还没有提到您正在使用的RDBMS。我认为它必须是MySQL或SQL Server。
<强> MySQL的:强>
以下是手册中的文档:DATE()
你可以这样使用它(插图):
SELECT DATE('2003-12-31 01:02:03')
哪会让你:2003-12-31
希望这有帮助!!!
编辑:我知道您想对其应用过滤(即WHERE
子句)。这是单向的。
您可以使用:
SELECT DATE(COLUMN_NAME)
FROM TABLE_NAME
WHERE DATE_FORMAT(COLUMN_NAME, '%Y %m %d') = DATE_FORMAT('2016-03-28', '%Y %m %d')
你可以在这个小提琴上查看 - &gt;的 SQL Fiddle 强>
希望这有帮助!!!
答案 2 :(得分:0)
您可以使用此SQL语句:
SELECT date(dateTime) From table