The table contains a single row with a single column that contains a string.
That doesn't make it a string. It's still a table. When you say "select ...
from table" it doesn't matter where the table came from, it's still an
operation on a table. You are not performing "select ... from 'tab1';", you're
performing "select ... from unnamed-table" where "unnamed-table" contains one
row containing 'tab1'.
The result of *that* select is yet another unnamed table that the sqlite3 shell
displays for you.
Even if you perform
select * from (select * from (select * from ( ... ) )
The result is still a table. Select is not an indirection operator like
accessing an element of an array or a structure.
On 2017-11-05, at 05:39, Klaus Maas <k...@maasser.eu> wrote:
> Yes, correct.
> But the contents of the returned table are not objects, but merely values.
> In this case the returned table contains a single string value .... which
> happens to be the name of a table, but it is not the table.
> Or do I get this wrong?
sqlite-users mailing list