q)trade:([] sym: 10?`4; time:10?.z.t; prx:10?100f; sz:10?10000);
q)quote:([] sym: 10?`4; time:10?.z.t; bPrx:10?100f; aPrx:10?100f; bSz:10?10000; aSz:10?10000);
q)testTable:update `s#a from ([] a:til 10; b: 10?`3; c:10?.z.p);
q)raze {update table:x from 0!meta x}'[tables[]]
c t f a table
--------------------
sym s quote
time t quote
bPrx f quote
aPrx f quote
bSz j quote
aSz j quote
a j s testTable
b s testTable
c p testTable
sym s trade
time t trade
prx f trade
sz j trade
我可以构建一个查询返回一个表,其中每行是“元表名”的表名+结果。任何建设这样的查询?
如果你确实想这样做,有很多方法。举一个例子:
q)update tableMeta:meta'[table] from ([] table:tables[])
table tableMeta
--------------------------------------------------------------------------------
quote (+(,`c)!,`sym`time`bPrx`aPrx`bSz`aSz)!+`t`f`a!("stffjj";``````;``````)
testTable (+(,`c)!,`a`b`c)!+`t`f`a!("jsp";```;`s``)
trade (+(,`c)!,`sym`time`prx`sz)!+`t`f`a!("stfj";````;````)
谢谢,第一个是很好的解决方案,但第二个正是我想要的。 – sdab
我对这里的update命令的理解是,它返回的是由“tables []”返回的表格,以及通过调用“table”列中的meta生成的额外的tableMeta列。我有权利吗? – sdab
@sdab - 是的,这是正确的 – MdSalih