哈哈哈123457
2017-08-10 07:49
采纳率: 100%
浏览 9.7k
已采纳

java for循环一个一个查询和全部结果放一个list sql语句用in这list查询 哪个效率高

java for循环一个一个查询和全部结果放一个list里面,然后sql语句通过用in这个list查询 哪个效率高

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

6条回答 默认 最新

  • linjingqin 2017-08-10 08:25
    已采纳

    看你的数据量,
    1、数量小的话2种都没有问题
    2、数据量大的话,这2中方式也都不可以用,最好采用游标查询(hibernate/mybatis/或者原生数据库都有提供游标)的方式去查询。
    3、如果你非要用in的话,推荐你使用exists。

    点赞 打赏 评论
  • Tsui丶 2017-08-10 07:52
    点赞 打赏 评论
  • 瞭望塔 2017-08-10 08:04

    影响的因素很多,循环次数,表数据大小,查询效率等,不过值得研究

    点赞 打赏 评论
  • 砸死接触 2017-08-10 08:44

    ‘java for循环一个一个查询’ 一般不会用 除非数据量非常小,无所谓效率问题。
    如果用in的方式查询 也是不好的 但是in毕竟在平时开发中是可以考虑的语法。
    所以只能二选一的话就选in。
    但是 如果in影响了效率 就要考虑其他方式,其他人也给了些建议,搜一搜就好!!!

    点赞 打赏 评论
  • qyg_java 2017-08-10 10:41

    每次查询一下都需要从连接池中获取连接,结束后连接还回连接池中,这种查询对数据库的压力是很大的。建议不要用这种for循环查询。

    点赞 打赏 评论
  • 猿小牛 2017-08-10 11:51

    如果一定要选其一,建议用in

    点赞 打赏 评论

相关推荐 更多相似问题