在 kdb 中将列存储为字符串
Store a column as a string in kdb
我有一个包含许多列的 table。我正在尝试从其中一列中获取数据并将其 return 作为字符串。
例如,如果我有:
A B C
1 2 3
4 5 6
7 8 9
我想取 B 列并将 258 存储为字符串。
我该怎么做?
像这样?
q)raze exec string B from ([] A:1 4 7;B:2 5 8;C:3 6 9)
"258"
或者您是否正在尝试更改 table 中的列类型?
q)update string B from ([] A:1 4 7;B:2 5 8;C:3 6 9)
A B C
--------
1 ,"2" 3
4 ,"5" 6
7 ,"8" 9
如果您所有的输入都是个位数,您需要做的就是
.Q.n t.B
以你的数据为例,
q)show t:([] A:1 4 7;B:2 5 8;C:3 6 9)
A B C
-----
1 2 3
4 5 6
7 8 9
q).Q.n t.B
"258"
请注意 .Q.n
只是一个包含 10 位数字的字符串:
q).Q.n
"0123456789"
如果要将字符串存储回 table,只需使用 update
:
q)update .Q.n B from `t
`t
q)t.B
"258"
我有一个包含许多列的 table。我正在尝试从其中一列中获取数据并将其 return 作为字符串。
例如,如果我有:
A B C
1 2 3
4 5 6
7 8 9
我想取 B 列并将 258 存储为字符串。 我该怎么做?
像这样?
q)raze exec string B from ([] A:1 4 7;B:2 5 8;C:3 6 9)
"258"
或者您是否正在尝试更改 table 中的列类型?
q)update string B from ([] A:1 4 7;B:2 5 8;C:3 6 9)
A B C
--------
1 ,"2" 3
4 ,"5" 6
7 ,"8" 9
如果您所有的输入都是个位数,您需要做的就是
.Q.n t.B
以你的数据为例,
q)show t:([] A:1 4 7;B:2 5 8;C:3 6 9)
A B C
-----
1 2 3
4 5 6
7 8 9
q).Q.n t.B
"258"
请注意 .Q.n
只是一个包含 10 位数字的字符串:
q).Q.n
"0123456789"
如果要将字符串存储回 table,只需使用 update
:
q)update .Q.n B from `t
`t
q)t.B
"258"