如果我只在过滤器中放入一个符号,如何选择特定记录?
Eg:
tab:([]a:1 2 3;b:(`abc`bde;`efg`rte;`dqw`gds))
1 (`abc`bde)
2 (`efg`rte)
3 (`dqw`gds)
我想过滤abc
,所以只返回:
1 (`abc`bde)
select from tab where b=`abc
无效。
答案 0 :(得分:5)
您可以使用带有/:
功能的每个右侧副词in
:
q)select from tab where `abc in/: b
a b
---------
1 abc bde
这里需要每个权利,因为表格列是向量;所以in
正在嵌套符号列表上运行。下面的exec
调用更清楚地显示了这一点:
q)0N!(exec b from tab);
(`abc`bde;`efg`rte;`dqw`gds)