Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Can this one to many SQL line be made faster?
Message
From
30/01/2004 05:36:55
Thomas Ganss (Online)
Main Trend
Frankfurt, Germany
 
 
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
00871681
Message ID:
00872220
Views:
19
>Thanks for all the suggestions. The UNION was the quickest, it cuts down the time by more than half. This is the expression I ended up with:
Cyril,

I also think that this can be faster - possibly quite a lot!

But as written before, without more info it is hard for me to guess
the possible speed. I quess that even worst case scenarios
(little or no possibility to dismiss records depending
on the many-where-clauses, access to the tables via network,
work done on the slowest machine here would take less than
15 seconds. Best case a few secs - as Fabio described,
the question is how much data has to be moved and what
speeds are possible from/to that medium.

Fabios Questions slightly enhanced,
with your old answers in between:

>a1) RECCOUNT(vcf!many) ?
500,000
>a2) indices ON vcf!many ?
About 6
a3) RowSize(vcf!many) as shown by disp stru
a4) table on local disk (speed ?) or network(LAN Speed)

>
>B1) RECCOUNT(vcf!one) ?
250
>B2) indices ON vcf!One ?
About 6
b3) RowSize(vcf!one) as shown by disp stru
b4) table on local disk (speed ?) or network(LAN Speed)

>C) RECCOUNT(result of select command) ?
300

D1)
Select count(*) FROM vcf!many Where ;
namount1 <> 0.00 OR namount2 <> 0.00

D2)
Select count(*) FROM vcf!many Where ;
(namount1 = 0.00 and namount2 = 0.00) ;
and namount3 <> 0.00

D3)
Select count(*) FROM vcf!One Where ctype in ('F','8')

E)
CPU / Memory / Disk of the machine doing the work

>F) Time for exec the select.
50 to 120 secs
Depends on what parameter ? the difference is a lot!
Timing now with the same diferences ?

regards

thomas
Previous
Reply
Map
View

Click here to load this message in the networking platform