mysql按日期分組tp5.0和原生寫法
阿新 • • 發佈:2018-11-07
原生
SELECT DATE_FORMAT(create_time,'%Y-%m-%d') as date,AVG(num) as avg,MAX(num) as max FROM `on_line`
WHERE server_id=2000 AND create_time>'2018-10-26' AND create_time<'2018-10-30'
GROUP BY DATE_FORMAT(create_time,'%Y-%m-%d')
tp5.0
$Online = new Online_Model;
$date_s = '2018-10-27';
$date_e = '2018-10-30';
$map['create_time'] = ['>',$date_s];
$map['create_time'] = ['<',$date_e];
$map['server_id'] = 4001;
$Online->where($map);
$Online->field(['server_id',"DATE_FORMAT(create_time,'%Y-%m-%d')"=>'date',"AVG(num)"=>'avg',"MAX(num)" => 'max']);
$Online->group("DATE_FORMAT(create_time,'%Y-%m-%d')");
$row = $Online->select();