KDB/Q:如何合并多列的值并排序?

KDB/Q: how to combine the values in multiple columns and sort the values?

我想创建一个包含多列值的新列,但这些值会被排序。请参阅下面的示例 table。并且列的类型是 C

name1   name2       name3       wanted
David   Barca       Alpha       Alpha Barca David
Sydney  Melbourne   Adelaide    Adelaide Melbourne Sydney
1201    21204       5601        1201 21204 5601
q)update wanted: " " sv/: asc each flip (name1;name2;name3) from t
name1    name2       name3      wanted
-----------------------------------------------------------
"David"  "Barca"     "Alpha"    "Alpha Barca David"
"Sydney" "Melbourne" "Adelaide" "Adelaide Melbourne Sydney"
"1201"   "21204"     "5601"     "1201 21204 5601"

如果您 wanted 是嵌套列表而不是单个字符串,则可以省略 sv 部分:

q)update wanted: asc each flip (name1;name2;name3) from t
name1    name2       name3      wanted
---------------------------------------------------------------
"David"  "Barca"     "Alpha"    "Alpha"    "Barca"     "David"
"Sydney" "Melbourne" "Adelaide" "Adelaide" "Melbourne" "Sydney"
"1201"   "21204"     "5601"     "1201"     "21204"     "5601"