Hmm that's an interesting note I thought it might be a property of the shell... but this is what I got... (shared keys are split by table alias, if different, so [0].t1.id or [0].id.t1 or [0].id[0] are really all the same value. I tried to test with MySQL(mariadb) and the second query is an error, without an alias... ``` select * from (select t1.id, t2.id from t1 join t2 on t1.id = t2.t1Id) t; -- not final 't' added... and then it complains duplicate column id. ``` mind you these are deprecated https://www.sqlite.org/pragma.html#pragma_full_column_names ``` (no pragma ) [ { t1: { id: 0 }, t2: { id: 1 }, id: [ 0, 1, t1: 0, t2: 1 ] } ] [ { id: 0, 'id:1': 1 } ] #pragma short_column_names=on [ { t1: { id: 0 }, t2: { id: 1 }, id: [ 0, 1, t1: 0, t2: 1 ] } ] [ { id: 0, 'id:1': 1 } ] --pragma short_column_names=off #pragma long_column_names=on [ { 't1.id': 0, 't2.id': 1 } ] [ { 'subquery_1.id': 0, 'subquery_1.id:1': 1 } ] #pragma short_column_names=on #pragma long_column_names=on [ { 't1.id': 0, 't2.id': 1 } ] [ { id: 0, 'id:1': 1 } ] ```