Re: Can "NOT IN" be expressed in a single block query?
- From: Tonkuma <tonkuma@xxxxxxxxxxxx>
- Date: Fri, 27 Jul 2007 15:02:41 -0700
I made mistake.
For NOT IN case:
SELECT col_a, col_b, ...
FROM (SELECT expression_a1, expression_a2, ...
FROM <table-reference-a>
WHERE condition_a) S(col_a, col_b, ...)
WHERE col_a NOT IN (SELECT expression_b
FROM <table-reference-b>
WHERE condition_b);
Rewrited Query should be:
SELECT expression_a1 AS col_a, expression_a2 AS col_b, ...
FROM <table-reference-a>
LEFT OUTER JOIN
<table-reference-b>
ON condition_b
AND expression_a1 = expression_b
WHERE condition_a
AND expression_b IS NULL;
.
- Follow-Ups:
- Re: Can "NOT IN" be expressed in a single block query?
- From: John Ruan
- Re: Can "NOT IN" be expressed in a single block query?
- References:
- Can "NOT IN" be expressed in a single block query?
- From: John Ruan
- Re: Can "NOT IN" be expressed in a single block query?
- From: Tonkuma
- Can "NOT IN" be expressed in a single block query?
- Prev by Date: Update Subquery Help
- Next by Date: Re: Can "NOT IN" be expressed in a single block query?
- Previous by thread: Re: Can "NOT IN" be expressed in a single block query?
- Next by thread: Re: Can "NOT IN" be expressed in a single block query?
- Index(es):