[size=medium] 那天写了一个小列表查询,就62条数据,居然使用了6s才能查出数据。
把sql在dbeaver运行,也只有几十毫秒的执行时间。
我没以为是java代码运行慢,没想到答案居然是在循环迭代取出list中又增加了三条查询语句。这样总共的查询语句一共执行了62*3+1次,难怪时间这么长了。
看来这是一个菜鸟级错误。通过表关联查询比较麻烦,我不想写,我想先取出外键再来个查询也是一样的效果,没想到迭代的时候重复了这些操作,虽然这个查询可能只是查询了一条数据。看来,通过关联查询还是有必要的,掌握这个技能也是很有必要的。
[/size]
把sql在dbeaver运行,也只有几十毫秒的执行时间。
我没以为是java代码运行慢,没想到答案居然是在循环迭代取出list中又增加了三条查询语句。这样总共的查询语句一共执行了62*3+1次,难怪时间这么长了。
看来这是一个菜鸟级错误。通过表关联查询比较麻烦,我不想写,我想先取出外键再来个查询也是一样的效果,没想到迭代的时候重复了这些操作,虽然这个查询可能只是查询了一条数据。看来,通过关联查询还是有必要的,掌握这个技能也是很有必要的。
[/size]