What does EXPLAIN SELECT <query> show?  Have you read the chapter in the
manual on optimizing queries?  Do you have all the proper indices set
up?

--Michael

> -----Original Message-----
> From: Apollo (Carmel Entertainment) [mailto:[EMAIL PROTECTED] 
> Sent: Wednesday, August 20, 2003 2:52 PM
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]
> Subject: RE: Need help optimizing query, awfully slow on only 
> 20000 records
> 
> 
> When following query is pulled up, it takes about whole 1-2 
> minutes to come up. "inquiries" table has 17000 records, 
> "contacts" has about 7000, "individual_contacts" has about 
> 16000. It has gotten worse once I upgraded to 4.0 and latest 
> MyODBC. Clients are separate machines (mix of Win98 and 
> WinXP). Those 20K records is what feeds the Access97 form, 
> pull down list filters out some and pulls up about 3K and 
> people just start typing a name and then (since there 
> multiple inquiries for some clients) pull down the list to 
> pick inquiry they want.
> 
> > What are you defining as a huge performance hit?
> > 
> > Is the result set 20K records, or the base tables? How big are the 
> > base tables?
> > 
> > Are the client and server on the same machine? Pulling 20K records 
> > across the network could take some time. Formatting 20K 
> records into a 
> > pull -down list in access will also take a long time. 
> Anyway who reads 
> > a 20K list?
> > 
> > Which parts of the process are slow? How does the query 
> perform from 
> > the mysql command line?
> > 
> > > -----Original Message-----
> > > From: Apollo (Carmel Entertainment) [mailto:[EMAIL PROTECTED]
> > > Sent: 19 August 2003 17:29
> > > To: [EMAIL PROTECTED]
> > > Subject: Need help optimizing query, awfully slow on only 20000 
> > > records
> > >
> > >
> > > 1.2Ghz Pentium, with 1/2Gig of ram, 4.0.14MySQL, RedHat9.0
> > >
> > > I have about 20K records that result from the following 
> query. Front 
> > > end for the database is ACCESS97 and pulling up 20K 
> records makes a 
> > > huge performance hit.
> > > For the form in question I am using PASSTHROUGH type query
> > > (the one that just
> > > passes everything straight to server without ODBC).
> > > NOTE: souce_for_inquiries_form is the join table and is
> > > searchable in the from
> > > (it feeds a pull-down list).
> > >
> > > SELECT inquiries.inquiry_id, inquiries.contact_id, 
> > > inquiries.indiv_contact_id, inquiries.phone, inquiries.fax, 
> > > inquiries.agent_id, inquiries.inquiry_date,
> > > inquiries.event_type, inquiries.letter_type, inquiries.event_date,
> > > inquiries.event_date_general, inquiries.event_location,
> > > inquiries.guests,
> > > inquiries.hours, inquiries.budget, inquiries.event_description,
> > > inquiries.talent_description, inquiries.past_use,
> > > inquiries.referred_by,
> > > inquiries.date_sent, inquiries.end_user, inquiries.event_id,
> > > inquiries.notes,
> > > source_for_inquiries_form.organization,
> > > source_for_inquiries_form.mailing_address_1,
> > > source_for_inquiries_form.mailing_address_2,
> > > source_for_inquiries_form.city,
> > > source_for_inquiries_form.state, source_for_inquiries_form.zip,
> > > source_for_inquiries_form.contact_type,
> > > individual_contacts.contact_name_first,
> > > individual_contacts.contact_name_last,
> > > individual_contacts.contact_prefix,
> > > individual_contacts.contact_title, individual_contacts.email
> > > FROM inquiries
> > > LEFT JOIN individual_contacts ON inquiries.indiv_contact_id =
> > > individual_contacts.indiv_contact_id
> > > INNER JOIN contacts AS source_for_inquiries_form ON
> > > inquiries.contact_id =
> > > source_for_inquiries_form.contact_id
> > > ORDER BY  inquiries.inquiry_id DESC;
> > >
> > > -------------------------------------------------
> 
> 
> 
> -------------------------------------------------
> Visit CARMEL MUSIC & ENTERTAINMENT website http://carmelme.com
> 
> -- 
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    
> http://lists.mysql.com/mysql?> [EMAIL PROTECTED]
> 
> 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to