dotsch1
1
Hi,
I have a splayed table in `:tbl/.
q) `:tbl/ set (a:1 2 3;s:“abc”)
Why am I getting different results based on tailing / ?
q){get~select from x}`:tbl
1b
q){get~select from x}`:tbl/
0b
Actually, why does get return something different or why does ~ (match) say those are different?
q)(~/)get each :tbl
:tbl/
0b
Regards,
Andras
q)0N!get`:tbl;
+a
s!(1 2 3;“abc”)
q)0N!get:tbl/; +
as!
:tbl/
The latter is an (internal) representation of the table, for deferred loading of the data.
Without the trailing /, the data is mapped/loaded immediately, as seen via .Q.w`mmap.
The trailing / indicates the mapping is deferred until used (when inside another function such as select/show).
~ doesn’t do that automatically, hence reports them as different.