INNER JOIN performance issue

N

Nano

Hi,

In a .mdb with related tables, related via ODBC to a SQL 2K server, I am
creating some havely joined queries. All INNER JOINS, which functions OK
and without any noticable delay.

Accept when I design a query with more than 4 INNER JOINS, then the
performance drops. I mean 10 seconds at least for 4 INNER JOINS, apposed
to <1 sec for 3 INNER JOINS. I have tried with joining different tables,
but it seems to be a problem of the number of joins, not which tables.

This is an example query:
SELECT sl_purchase.number, sl_purchase.numberextern,
sl_purchase.datecreate, sl_purchase.dateexpect, sl_purchase.weight,
sl_purchase.cost, sl_purchase.memoheader, sl_purchase.memofooter,
sl_relation.name AS relation,
sl_address.heading, sl_address.street, sl_address.zip, sl_address.city,
sl_address.telephone, sl_address.fax,
sl_country.countrycode,
sl_valuta.valutacode,
sl_deliverycondition.name AS deliverycondition
FROM ((((
sl_purchase
INNER JOIN sl_relation ON sl_purchase.relation=sl_relation.ids)
INNER JOIN sl_address ON sl_relation.ids=sl_address.idp)
INNER JOIN sl_country ON sl_address.country=sl_country.ids)
INNER JOIN sl_valuta ON sl_purchase.valuta=sl_valuta.ids)
INNER JOIN sl_deliverycondition ON
sl_purchase.deliverycondition=sl_deliverycondition.ids
WHERE sl_address.row=1
AND sl_purchase.ids='abs';


Is this a common problem in Access? Anything I can do about it? Because I
would really like to even join more tables...

Thanks in advance!

Nano


PS1 When not connected via integrated security to the SQL 2K, with 3
joins the question for a name and password pops up almost instantly, with
4 joins the question for a name and password takes just as long to pop up
as when processing the query with int.sec.

PS2 For an application written in vb .net, I use MS Access as a
report/document print front end. It's all setup and functioning
(automating Access through vb, selecting and printing, even passing where
statement and printername). But all testing is done directly from MS
Access
 
G

Guest

hi,

MS Access has a Performance Analyzer you can use to have it make suggestions
on how to improve performance on your database entities. Choose, Tools -->
Analyze --> Performance. Then select the queries you want to analyze. You
can also choose for Access to make the improvements for you based on the
performance results.

Hope this helps!

geebee
 
N

Nano

Hi,

Yeah, I already tried the performance analyzer, but access could not find
anything to improve... But thanks for thinking with me!

Nano
 
N

Nano

Here I was, banging away with SQL, not even knowing Pass-Through Queries
existed in Access.

It did the job. I am even able to save the connectionstring. Perfect!

Thanks very much!

Nano
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top