2014-04-08 97 views
0

我想根据日期时间列中的给定日期设置mysql选择查询。例如:MySQL从日期时间选择特定日期

SELECT DATE_FORMAT(colName, '%Y-%m-%d') WHERE.. 

但我不确定如何正确执行此操作。我使用PHP来做到这一点。

+0

你的查询似乎没错。请提供更多信息。 –

+0

我不知道如何完成它。它应该是这样吗? WHERE colName ='2014-04-08'? – icecub

+0

那这取决于你想得到什么? 'SELECT DATE_FORMAT()'只是格式化显示数据,其中'WHERE'条件用于选择要显示的内容。 –

回答

0

下面的例子解释查询到01-JAN-2014和15-JAN-2014之间进行选择日期。

SELECT 
    DATE_FORMAT(colName, '%Y-%m-%d') AS colName 
FROM 
    `my_table` 
WHERE 
    DATE_FORMAT(colName, '%Y-%m-%d') >= '2014-01-01' AND DATE_FORMAT(colName, '%Y-%m-%d') <= '2014-01-15' 
+0

为什么要在WHERE子句中使用'DATE_FORMAT()'?为什么不......'WHERE colName> ='2014-01-01'和colName <'2014-01-16''? – eggyal

+0

这就是我一直在寻找的。非常感谢! – icecub

0

要验证您的查询,使用sqlfiddle和使用查询没有任何表如

SELECT DATE_FORMAT(now(), '%Y-%m-%d') from dual