查询优化Java - 在嵌套循环中使用查询

时间:2013-10-25 11:46:36

标签: java mysql database

我遇到了以下情况

 for(int i =1;i<=8028;i++)
    {
        for(int j=1;j<=1300;j++)
        {
          xyz = executeQuery("Select where abc = i and bcd = j")

        }   
    }

在上面的示例中,我猜查询执行8028 * 1300时间,这需要大量的时间和资源。

我有什么方法可以优化时间和性能吗?

请原谅我上面的代码,它只是一个伪代码。如果有任何不清楚的地方,请告诉我。

4 个答案:

答案 0 :(得分:0)

做类似“SELECT * FROM ... ORDER BY abc,bcd WHERE abc in 1-8028 AND bcd in range 1-1300”,然后迭代结果。

需要有关实际数据库结构的更多信息才能提供更好的答案

答案 1 :(得分:0)

试试这个::

       xyz = executeQuery(" Select abc, bcd  from myTable"
+" where abc between 1 and 8028"
    +" and bcd between 1 and 1300")

答案 2 :(得分:0)

使用此

Select * from your_Table where (abc between 1 and 8028) and (bcd between 1 and 1300)

答案 3 :(得分:0)

试试这个:

select ...... where (abc between 1 and 8028) and (bcd between 1 and 1300)