我正在使用ADOdb for PHP库从一个oracle数据库访问600万行视图表。需要建议调试:SQL查询使用ADOdb的方式太长
从运行在SUSE机web服务器中的下面的SQL查询时间约1分钟:
$ adodb_handle->执行(“SELECT COUNT(BEPROTEXT)FROM(SELECT BEPROTEXT FROM V_E_LOG WHERE BEPROTEXT LIKE' %jaya%')“);
在我的笔记本电脑上运行,从WAMP相同的SQL查询(也使用ADOdb的LIB)需要大约7秒
如果我运行下面的SQL查询:
$ adodb_handle->执行( “SELECT COUNT(BEPROTEXT)FROM V_E_LOG”);
从SUSE和笔记本电脑大约需要3秒。
我不知道为什么从SUSE计算机的第一个查询需要这么长时间,1分钟? 你们可以给我一些建议,我该如何解决这个问题或调试问题?我在一个死胡同这里:(
SUSE机器和笔记本电脑都查询位于单独机器上的相同oracle数据库。我的笔记本电脑上的网络服务器是wamp。我不确定SUSE计算机上有哪些Apache版本。 – justin 2010-10-05 03:16:19
我遇到的问题是SUSE机器和我的笔记本电脑都运行相同的SQL语句,但从SUSE机器查询的时间比我的笔记本电脑(3秒)长(1分钟)。所有机器都位于同一个LAN上。 – justin 2010-10-05 03:18:56
最大的区别是因为在第一个查询中,您会计算每个包含jaya的文本,因此sql server必须检查表中存储的每个字符串是否包含jaya。第二个只计算每个文本与表中总共行数的总和。 – ITroubs 2010-10-06 20:12:57