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 <> 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

Reply via email to