如何在kdb中创建带符号的字符串/字符串列表?

如何在kdb中创建带符号的字符串/字符串列表?,kdb,q-lang,Kdb,Q Lang,我有一个包含一列字符串的表,我想创建一个类型为string的新列,并在每个字符串项前面加上`。我该怎么做? 例如: 旧的: a b c 新增: "\`a" "\`b" "\`c" 以下表为例: q)show tab:([]a:("a";"b";"c")) a - a b c 若要获得一个前面带有反勾号的新列,您需要在每一行中追加“`: q)update b:("`",'a) from tab a b ------ a "`a" b "`b" c "`c" 如果列由符号组成,则只需首先将其

我有一个包含一列字符串的表,我想创建一个类型为string的新列,并在每个字符串项前面加上`。我该怎么做? 例如:

旧的

a
b
c
新增

"\`a"
"\`b"
"\`c"

以下表为例:

q)show tab:([]a:("a";"b";"c"))
a
-
a
b
c
若要获得一个前面带有反勾号的新列,您需要在每一行中追加
“`

q)update b:("`",'a) from tab
a b
------
a "`a"
b "`b"
c "`c"
如果列由符号组成,则只需首先将其转换为字符串:

q)tab2:([]a:`a`b`c)
q)update b:("`",'string a) from tab2
a b
------
a "`a"
b "`b"
c "`c"
另一种解决方案(在这种情况下更快):


有时,人们更熟悉SQL而不是q,在只需要处理向量的情况下,就表提出问题;并创建新的列,其中所需的只是一个变量——或作为参数传递的值

q)"`",'tab[`a]
"`a"
"`b"
"`c"
当然,
tab
a
列只不过是向量
“abc”
,所以

q)"`",'"abc"
"`a"
"`b"
"`c"
可能就是你所需要的

见:

    • 还有另一种方法:
      从选项卡更新(“`,/:a)

      很高兴我能帮忙!如果这回答了你的问题,请考虑接受它作为一个答案,这将有助于将来可能重访这个问题的人。如果你喜欢Thomas Smyth的答案,你可能不希望结果中出现反斜杠。
      q)"`",'"abc"
      "`a"
      "`b"
      "`c"