KDB / Q: как объединить значения в нескольких столбцах и отсортировать значения?

#kdb

#kdb

Вопрос:

Я бы хотел создать новый столбец, содержащий значения нескольких столбцов, но эти значения будут отсортированы. Смотрите Пример таблицы ниже. и тип столбцов C

 name1   name2       name3       wanted
David   Barca       Alpha       Alpha Barca David
Sydney  Melbourne   Adelaide    Adelaide Melbourne Sydney
1201    21204       5601        1201 21204 5601
 

Комментарии:

1. Ваш вопрос, вероятно, отклоняется, потому что вы не пытаетесь решить это самостоятельно.

Ответ №1:

 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"