page contents

400w数据,sql查询却需要4s,怎么优化?

Pack 发布于 2020-01-06 16:49
阅读 1748
收藏 0
分类:数据库

数据库中总共有5kw数据,页面加载的时候需要查询该表的数据。


查询的时候是分页查询,只查询10条数据,但是要知道根据当前条件有多少条。查询之后,不算页面渲染,后台接口响应3.76秒。sql如下:


select * from ( select u.*, rownum rn FROM user u to_char(CREATEDATE, 'yyyy-MM-dd') >= #{dateStart,jdbcType=TIMESTAMP} and to_char(CREATEDATE, 'yyyy-MM-dd') <= #{dateEnd,jdbcType=TIMESTAMP} and rownum >= 0

) where rn < 10

优化怎么做?

sql中createdate是表分区字段,有索引,默认查询3天的数据,3天查询到的数据差不多100w。表每满5kw就分一次表

 

最佳答案 2020-03-24 17:13

120
Pack
Pack

不要用to_char啊,查询条件用了函数就不走索引了


请先 登录 后评论