Я хотел бы присоединиться к (конкатенации) 2 или более, KDB таблицы, которые имеют повторяющиеся столбцы:KDB присоединения (конкатенации) таблицы с повторяющимися столбцов
d1:`a`b`c!(1 2 3;4 5 6;7 8 9)
d2:`a`b`c`a!(10 20 30;40 50 60;70 80 90;100 110 120)
t1: flip d1
a b c
-----
1 4 7
2 5 8
3 6 9
t2: flip d2
a b c a
------------
10 40 70 100
20 50 80 110
30 60 90 120
Я пытаюсь объединить эти 2 таблицы, с Nils где таблица не имеет значения, что-то вроде следующего:
a b c a
------------
1 4 7
2 5 8
3 6 9
10 40 70 100
20 50 80 110
30 60 90 120
t1 uj t2
yeilds (только имеет столько столбцов, как t1 определила):
a b c
--------
1 4 7
2 5 8
3 6 9
10 40 70
20 50 80
30 60 90
t2 uj t1
(повторяет записи из t1, где они не доступны)
a b c a
------------
10 40 70 100
20 50 80 110
30 60 90 120
1 4 7 1
2 5 8 2
3 6 9 3
возможно ли это? или мне нужно предварительно определить таблицу, которая может вместить все возможные столбцы? Любой совет будет оценен по достоинству.
С уважением Clifford
Привет, Рахул, к сожалению, это проблема, которую я пытаюсь решить. Для практического примера, если у вас есть сообщение FIX, которое имеет повторяющиеся группы (один и тот же тег повторяется 1 или более раз). Я пытаюсь импортировать эти сообщения в таблицу, где столбцы сопоставляются с повторяющимися тегами. – cliff
Хорошо, имея несколько столбцов с одинаковым именем, не является хорошим дизайном и не может ожидать, что функции kdb будут вести себя нормально. Лучше предварительно обработать таблицу и объединить разные cols с одним и тем же тегом (name) в один. Что-то вроде: raze each (, '). {value [x] group key x} @ '(d1; d2) – Rahul
Я склонен согласиться с вами, Рахул, просто искал некоторую информацию из сообщества kdb, о том, как они предложили бы это решить. Я попробую ваше предложение. Большое спасибо за вашу помощь. – cliff