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 !





Reply via email to