Subject | RE: [firebird-support] Interbase 6.0.1.6 |
---|---|
Author | Helen Borrie |
Post date | 2004-01-28T23:15:58Z |
At 08:05 AM 29/01/2004 +1000, you wrote:
on the same machine but neith 1.5 nor 1.0 can be installed "straight over
the top".
For IB 6, a better query is
Select A.*
from ATABLE A
where exists (
( Select 1 from anothersmalltable B
where A.Afield = B.Bfield )
Firebird optimises IN(subquery) to an EXISTS() query, which helps some.
Something is wrong there. What's the size of the table?
are capable of. What kind of data is AField? is it, for example, a
foreign key with a very low catchment of possible values? This one's a
performance killer.
NB - please trim your replies !!!!!!!!!!!!!!!!!!!!
/heLen
>1. Can we run a firebird install( does it exist) straight over the top of aDefinitely not. Firebird 1.5 can coexist with an IB or Firebird 1.0 server
>currently installed IB 6.0.1.6?
on the same machine but neith 1.5 nor 1.0 can be installed "straight over
the top".
>2. More specifics.How "small" is anothersmalltable?
>With IB we found that an SQL
>
>Select *
>from ATABLE
>where
> ( AField IN ( Select BField from anothersmalltable ))
>
>took 10 minutes
For IB 6, a better query is
Select A.*
from ATABLE A
where exists (
( Select 1 from anothersmalltable B
where A.Afield = B.Bfield )
Firebird optimises IN(subquery) to an EXISTS() query, which helps some.
>where5 seconds is still waaaaaaay too long unless ATable has gazillions of rows.
>
>select *
>from ATABLE
>where
>( AField = 'AValue' )
>
>run multiple times and appended to a clientdataset took 5 seconds.
Something is wrong there. What's the size of the table?
>I am perplexed and troubled by this discrepancy.I would be, too. Neither of these queries performs close to what IB and FB
are capable of. What kind of data is AField? is it, for example, a
foreign key with a very low catchment of possible values? This one's a
performance killer.
NB - please trim your replies !!!!!!!!!!!!!!!!!!!!
/heLen