选择查询时格式化日期列

时间:2013-01-09 05:41:23

标签: php mysql select date-format

这是我的约会数据; 来自:2013年1月9日 致:22-01-2013(格式是固定的

如何格式化列日期send_date_timed-m-Y ..以下是我的查询:

$filter = "and DATE_FORMAT(send_date_time,'%d-%m-%Y') BETWEEN '08-01-2012 12:00:00' and '22-01-2013 12:00:00' ";

但是当我尝试使用此(以下)查询时,上面的查询失败了,是的可以工作:

$filter = "and send_date_time BETWEEN '2013-01-08 12:00:00' and '2013-01-22 12:00:00' ";

完整查询

$get_transaction_history  = ("select * from `sms_sendlog` where store_id='".$store."' ".$filter." order by id desc"); 

柱:

Colum Name : send_date_time
e.g  value : 2012-10-22 10:19:36

2 个答案:

答案 0 :(得分:5)

应该是

$filter = "and send_date_time BETWEEN DATE_FORMAT('08-01-2012 12:00:00','%d-%m-%Y') AND DATE_FORMAT('22-01-2013 12:00:00','%d-%m-%Y') ";

Read more

答案 1 :(得分:0)

使用 STR_TO_DATE 功能,而不是使用 DATE_FORMAT 功能。

试试这个:

$filter = "and send_date_time BETWEEN STR_TO_DATE('08-01-2012 12:00:00','%d-%m-%Y') AND STR_TO_DATE('22-01-2013 12:00:00','%d-%m-%Y') ";

点击此链接MySQL Date Time Function: STR_TO_DATE