如何格式化MySQL查询日期

时间:2013-05-03 04:46:25

标签: mysql date

如何将MySQL查询日期格式化为此格式?目前我的变量是2013年8月13日,但我的数据库是2013-08-13。

$sql_stmt = "select * from abs where myname = 'david' and date between '$start' and '$end' order by log_id;";

4 个答案:

答案 0 :(得分:1)

尝试:

$sql_stmt = "select * from abs where myname = 'david' and date between STR_TO_DATE('$start', '%m/%d/%Y') and STR_TO_DATE('$end', '%m/%d/%Y') order by log_id;";

答案 1 :(得分:0)

请参阅日期格式部分HERE

中的示例

UPDATE 您几乎无论如何都可以格式化,请查看SQLFIDDLE

答案 2 :(得分:0)

您可以将输出字符串转换为可变日期格式,然后进行比较。

$sql_stmt = "select *,DATE_FORMAT(date, '%d/%c/%Y') as date1 
from abs 
where 
myname = 'david' 
and date1 between '$start' and '$end' 
order by log_id;";

答案 3 :(得分:0)

我们有

mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');
        -> 'Saturday October 1997'

我们可以将您的解决方案调整为

$sql_stmt = "select * from abs where myname = 'david' 
          and DATE_FORMAT(date, '%W %M %Y') 
          between STR_TO_DATE('$start', '%m/%d/%Y') 
          and STR_TO_DATE('$end', '%m/%d/%Y') order by log_id;";