aboutsummaryrefslogtreecommitdiff
path: root/src/expr.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2020-03-10 11:50:43 +0000
committerdrh <drh@noemail.net>2020-03-10 11:50:43 +0000
commit0c76e892d9622dc5c13b168b39f40aa51884cef6 (patch)
tree57dd9ae56140238ef495cc2fd7c5dfb5bb4d62a3 /src/expr.c
parent088489e8d9ebbcbbbd99093a83bc93bfcd1a39a0 (diff)
downloadsqlite-0c76e892d9622dc5c13b168b39f40aa51884cef6.tar.gz
sqlite-0c76e892d9622dc5c13b168b39f40aa51884cef6.zip
Apply the correct affinity transformations when pulling values off of the
sorter index used for GROUP BY. Ticket [e0c2ad1aa8a9c691] FossilOrigin-Name: 101f7dea75a203f1f3aa422a607ef701eb0901ba4d5e8d1075cd350454a61956
Diffstat (limited to 'src/expr.c')
-rw-r--r--src/expr.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/expr.c b/src/expr.c
index 01cc37cc0..f3ce1de75 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -3791,8 +3791,12 @@ expr_code_doover:
assert( pCol->iMem>0 );
return pCol->iMem;
}else if( pAggInfo->useSortingIdx ){
+ Table *pTab = pCol->pTab;
sqlite3VdbeAddOp3(v, OP_Column, pAggInfo->sortingIdxPTab,
pCol->iSorterColumn, target);
+ if( ALWAYS(pTab) && pCol->iColumn>=0 ){
+ sqlite3ColumnDefault(v, pTab, pCol->iColumn, target);
+ }
return target;
}
/* Otherwise, fall thru into the TK_COLUMN case */