我有一个 kdb 表,其格式可以用
进行总结app type labels
--------------------------------------------------------
app1 frontend ("language:js";"owner:bob";"license:GPL")
app2 backend ("language:go";"owner:alice")
我不知道如何将
labels
“分解”到自己的列中,直接进入该表并获得类似的东西
app type language owner license
-------------------------------------------
app1 frontend "js" "bob" "GPL"
app2 backend "go" "alice" ""
(注意可选kv)
我怎样才能实现这个目标?我觉得我错过了一些非常简单的东西......
首先,不要使用
type
作为列名。它是 kdb+ 中的保留关键字。
这是第一遍,它得到了你想要的,但有点混乱:
q)t:([]app:`app1`app2;Type:`frontend`backend;labels:(("language:js";"owner:bob";"license:GPL");("language:go";"owner:alice")))
q)delete labels from t,'(uj/)exec enlist each(!/)@/:flip each"S*"$/:/:":"vs/:/:labels from t
app Type language owner license
--------------------------------------
app1 frontend "js" "bob" "GPL"
app2 backend "go" "alice" ""