aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2013-05-01 17:58:35 +0000
committerdrh <drh@noemail.net>2013-05-01 17:58:35 +0000
commita309552e2cc3aa3de14c7fd5a6110375d4efb43d (patch)
tree763ca82cc45c1e3b732e5d062bcb4da151ac8e62 /src
parent5c10f3b38e3930ec9937f8867d12fe431e3de2bc (diff)
downloadsqlite-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.c2
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 ){