gaobo987567
积累从点滴开始
2012-10-10 14:42

hibernate + mysql由于sq语句跨表多而导致执行效率低,这样解决好吗?

  • mysql
  • hibernate

我在开发web系统,持久层框架是hibernate,数据库是mysql,由于之前没有考虑到sql执行效率的问题,现在不到10万的数据,查询就很慢了,很棘手啊~

查了一些资料,想到了一个办法,比如,在解决子查询的时候,能否把sql拆开,分部执行,先写一个方法,执行完原来子查询的方法,结果集装入List,然后迭代这个List,再去执行原来sql中,子查询外面的主查询,这样,两步执行完,得到目标结果集,我想知道这种方法和原来的子查询哪个执行效率更高,请各位大侠给予指点~

我觉得sql中包含in、or和exists都对系统是很大的累赘,系统的数据量在持续增长,这是个很棘手的问题啊!

另外,还有其他什么好的优化方法,也请大侠们给予指点啊~

  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

5条回答

为你推荐