kdb объединяет (объединяет) таблицы с повторяющимися столбцами

Я хотел бы объединить (объединить) 2 или более таблиц 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  

Это возможно? или мне нужно заранее определить таблицу, которая может вместить все возможные столбцы? Любой совет будет принят во внимание.

С уважением Клиффорд

1 ответ

Ваша вторая таблица имеет 2 столбца с одинаковыми именами ('a'), и это создает проблему. переименуйте его, и UJ будет работать.

q) t1:flip `a`b`c!(1 2 3;4 5 6;7 8 9) 

q) t2:flip `a`b`c`d!(10 20 30;40 50 60;70 80 90;100 110 120)
q) t1 uj t2

 a  b   c   d
 1  4   7   
 2  5   8   
 3  6   9   
 10 40  70  100
 20 50  80  110
 30 60  90  120
Другие вопросы по тегам