SELECT *
FROM A_TABLE at
WHERE
at.VALUE1 = 'Y' AND
NOT EXISTS (
SELECT 1
FROM B_TABLE bt
WHERE bt.VALUE2 = 'X');
The query PLAN would tell you for certain, but I would expect the answer to
be:
half of A_TABLE rows times all of B_TABLE rows.
If there's an index on
: Monday, April 02, 2012 5:13 PM
To: firebird-support@yahoogroups.com
Subject: RE: [firebird-support] Not Exists cost
If B_TABLE.VALUE2 never contains 'X' and half of A_TABLE.VALUE1 are
'Y'
what would be the cost of executing this statement? A_TABLE.VALUE1 is
indexed and B_TABLE.VALUE2 does
-support@yahoogroups.com
Subject: Re: [firebird-support] Not Exists cost
SELECT *
FROM A_TABLE at
WHERE
at.VALUE1 = 'Y' AND
NOT EXISTS (
SELECT 1
FROM B_TABLE bt
WHERE bt.VALUE2 = 'X');
The query PLAN would tell you for certain, but I would expect the
answer to be:
half
@yahoogroups.com
Sent: Mon, Apr 2, 2012 5:12 pm
Subject: RE: [firebird-support] Not Exists cost
If B_TABLE.VALUE2 never contains 'X' and half of A_TABLE.VALUE1 are 'Y'
what would be the cost of executing this statement? A_TABLE.VALUE1 is
indexed and B_TABLE.VALUE2 does
If B_TABLE.VALUE2 never contains 'X' and half of A_TABLE.VALUE1 are 'Y'
what would be the cost of executing this statement? A_TABLE.VALUE1 is
indexed and B_TABLE.VALUE2 does not have an index.
Would it be half of A_TABLE rows times all of B_TABLE rows? Or would
the Not Exists statement be
If B_TABLE.VALUE2 never contains 'X' and half of A_TABLE.VALUE1 are 'Y'
what would be the cost of executing this statement? A_TABLE.VALUE1 is
indexed and B_TABLE.VALUE2 does not have an index.
Would it be half of A_TABLE rows times all of B_TABLE rows? Or would the
Not Exists statement be