【发布时间】:2017-03-14 18:23:45
【问题描述】:
在旧数据库中,日期列存储为 12-10-2012 15:20:36。我需要在 15 分钟的时间内知道使用情况。我从这里获取了部分信息,但下面的这个脚本给了我零结果。我错过了什么?
$stats = mysql_query("SELECT
count(id) as count,
CASE
WHEN minute(STR_TO_DATE(datum, '%d-%m-%Y %h:%i:%s')) BETWEEN 0 and 14 THEN '00'
WHEN minute(STR_TO_DATE(datum, '%d-%m-%Y %h:%i:%s')) BETWEEN 15 and 29 THEN '15'
WHEN minute(STR_TO_DATE(datum, '%d-%m-%Y %h:%i:%s')) BETWEEN 30 and 44 THEN '30'
WHEN minute(STR_TO_DATE(datum, '%d-%m-%Y %h:%i:%s')) BETWEEN 45 and 59 THEN '45'
END AS intervals
FROM errors
GROUP BY intervals");
while($stat = mysql_fetch_object($stats)) {
echo $stat->intervals." - ".$stat->count."<br>";
}
【问题讨论】:
-
你跑过
select STR_TO_DATE(datum, '%d-%m-%Y %h:%i:%s') from errors,输出看起来是否合理? -
嗯,刚刚做了,完全没有,我只得到了空格...
标签: mysql str-to-date