首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何简化和减少特定日期格式的sql查询的执行时间?

如何简化和减少特定日期格式的sql查询的执行时间?
EN

Stack Overflow用户
提问于 2016-05-22 14:07:50
回答 2查看 351关注 0票数 1

我正在使用带有以下查询和代码的jdbcTemplate

代码语言:javascript
复制
    String sql = select count(*) as count ,trunc(fin.fin_date) as dateAndTime from  (select * from rec where rec_status='RECEIVED' and fin_date>sysdate-8) fin group by trunc(fin.fin_date)

    try {
        return jdbcTemplate.query(sql, new RowMapper<Chrt>() {
            @Override
            public Chrt mapRow(ResultSet rs, int rowNum) throws SQLException {
                Chrt receive = new Chrt();
                java.util.Date date =(rs.getDate("dateAndTime"));
                receive.setDate(date.toString());
                receive.setCount(rs.getInt("count"));
                return receive;
            }
        });
    } catch (DataAccessException e) {
        return null;
    }
 }

它以类似于2016-05-19的格式返回我的日期,但我需要像19-5-16这样的日期。有没有可能在不增加执行时间的情况下获得这种格式?

我该怎么做呢?

EN

回答 2

Stack Overflow用户

发布于 2016-05-22 15:31:42

您可以使用TO_CHAR函数来代替trunc函数。它将为您提供指定格式的日期:

代码语言:javascript
复制
String sql = select count(*) as count ,TO_CHAR(fin.fin_date, 'DD-MON-YY') as dateAndTime from  (select * from rec where rec_status='RECEIVED' and fin_date>sysdate-8) fin group by TO_CHAR(fin.fin_date, 'DD-MON-YY');

这不会显著影响性能。

为了提高性能,我建议您查看查询的查询计划。要查看此计划,只需执行:

代码语言:javascript
复制
EXPLAIN PLAN FOR 
select count(*) as count ,TO_CHAR(fin.fin_date, 'DD-MON-YY') as dateAndTime from  (select * from rec where rec_status='RECEIVED' and fin_date>sysdate-8) fin group by TO_CHAR(fin.fin_date, 'DD-MON-YY')

在任何oracle sql客户端和read the doc中,了解为什么它太慢以及如何提高性能。(盲目猜测:在fin_date上建立索引)

票数 0
EN

Stack Overflow用户

发布于 2016-05-23 17:12:21

为什么不使用一个查询而不是两个查询呢?

代码语言:javascript
复制
select count(*) as count ,TO_CHAR(fin.fin_date, 'DD-MON-YY') as dateAndTime 
from rec 
where rec_status='RECEIVED' and fin_date>sysdate-8
group by TO_CHAR(fin.fin_date, 'DD-MON-YY');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37371137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档