this is more-like db related question, but nevertheless you should check the
documentation for the DBI package. I think you can gain performance if you prepare
your query once and then only execute it. the sql parser is not something working with
a null-time response and the summ
-----Original Message-----
From: Davide Copelli [mailto:[EMAIL PROTECTED]]
Sent: Tuesday, October 01, 2002 11:14 AM
To: [EMAIL PROTECTED]
Subject: Mysql performace 30000 record
I need to execute multiply query on a Mysql database with 30000 record
I use this code to read a txt file with 50 records (eg. page1 , page 2, page 3 etc)
and then execute some query (the code is ok):
......
......
open (INPUT, "< $filepageid") || &file_open_error("$filepageid");
while ($riga=<INPUT>){
$nump++;
chop($riga);
$pagina[$nump] = $riga;
$sth= $dbh->prepare("SELECT count(*) FROM lognew WHERE pageid='$pagina[$nump]' and
data>='$startdate'"); $sth->execute; $totalvisit[$nump] = $sth->fetchrow_array();
$sth = $dbh->prepare("SELECT count(*) FROM lognew WHERE (pageid='$pagina[$nump]' and
data='$dataoggi')"); $sth->execute; $totalvisittoday[$nump] = $sth->fetchrow_array();
$sth = $dbh->prepare("SELECT count(*) FROM lognew WHERE (pageid='$pagina[$nump]' and
data='$dataieri')"); $sth->execute; $totalyvisit[$nump] = $sth->fetchrow_array();
$sth= $dbh->prepare("SELECT count(*) FROM lognew WHERE (pageid='$pagina[$nump]' and
data<='$fine30gg' and data>='$inizio30gg')"); $sth->execute; $totalmvisit[$nump] =
$sth->fetchrow_array();
}
close (INPUT);
The question is:
Using the same statement object $sth can affect MySql performance ? Are there
altenative ways to optimize this routine ? Are 30000 records to much for this kind of
query ?
Thank you very much !