【发布时间】:2017-01-25 18:03:38
【问题描述】:
我的数据库中有一个表:
CREATE TABLE `yapial` (
`user_id` int(11) NOT NULL,
`username` varchar(255) DEFAULT NULL,
`first_name` varchar(50) DEFAULT NULL,
`last_name` varchar(50) DEFAULT NULL,
`gender` varchar(10) DEFAULT NULL,
`password` varchar(50) DEFAULT NULL,
`status` tinyint(10) DEFAULT NULL,
`date` datetime NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
status 和 date 列索引。我运行sql代码:
select status, count(*) from user_details group by status
成功运行 0.34 毫秒。但我想添加一个日期限制 =>
select date, status, count(*) from user_details
where date between '2017-01-25 18:13:50' and '2017-01-29 18:13:50'
group by status
成功运行 6.52s。时间限制太高了。我想减少跑步时间。我应该如何改进?
【问题讨论】:
标签: mysql date where-clause