diff options
author | drh <> | 2022-06-07 13:09:58 +0000 |
---|---|---|
committer | drh <> | 2022-06-07 13:09:58 +0000 |
commit | 33b2cb9aecc9b6be1b4c88c187cd30c95fa6440d (patch) | |
tree | 03354c880c473f4a322d271cbfff9344558bc29d /src | |
parent | bb1369037b0d9ddf2def8de80aeb3c9ad27bf3a8 (diff) | |
download | sqlite-33b2cb9aecc9b6be1b4c88c187cd30c95fa6440d.tar.gz sqlite-33b2cb9aecc9b6be1b4c88c187cd30c95fa6440d.zip |
Fix the query flattener to deal with a RIGHT JOIN corner case described
by [forum:/forumpost/323f86cc30|forum post 323f86cc30].
FossilOrigin-Name: 3f45007d544e5f787d5837b4d9f484ba473d69cdba83c229228e9c2f6b972b75
Diffstat (limited to 'src')
-rw-r--r-- | src/select.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/select.c b/src/select.c index 122313e70..86629d5c3 100644 --- a/src/select.c +++ b/src/select.c @@ -3763,9 +3763,10 @@ static Expr *substExpr( Expr *pExpr /* Expr in which substitution occurs */ ){ if( pExpr==0 ) return 0; - if( ExprHasProperty(pExpr, EP_OuterON) + if( ExprHasProperty(pExpr, EP_OuterON|EP_InnerON) && pExpr->w.iJoin==pSubst->iTable ){ + testcase( ExprHasProperty(pExpr, EP_InnerON) ); pExpr->w.iJoin = pSubst->iNewTable; } if( pExpr->op==TK_COLUMN |