diff options
author | drh <drh@noemail.net> | 2013-05-01 17:58:35 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2013-05-01 17:58:35 +0000 |
commit | a309552e2cc3aa3de14c7fd5a6110375d4efb43d (patch) | |
tree | 763ca82cc45c1e3b732e5d062bcb4da151ac8e62 /src | |
parent | 5c10f3b38e3930ec9937f8867d12fe431e3de2bc (diff) | |
download | sqlite-a309552e2cc3aa3de14c7fd5a6110375d4efb43d.tar.gz sqlite-a309552e2cc3aa3de14c7fd5a6110375d4efb43d.zip |
Do not use a transitive constraint to an IN operator where the RHS is a
constant if there exists a direct == operator to another table in an outer
loop.
FossilOrigin-Name: faedaeace9c7ed9a8aaf96700caee09db0c0c061
Diffstat (limited to 'src')
-rw-r--r-- | src/where.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/where.c b/src/where.c index 62f9af676..2de894c3e 100644 --- a/src/where.c +++ b/src/where.c @@ -705,7 +705,7 @@ static WhereTerm *findTerm( continue; } } - if( pTerm->prereqRight==0 ){ + if( pTerm->prereqRight==0 && (pTerm->eOperator&WO_EQ)!=0 ){ pResult = pTerm; goto findTerm_success; }else if( pResult==0 ){ |