2017-08-24 68 views
0

我需要一個外鍵添加到我已經使用CSV添加外鍵KDB現有表

table:("SSSSSSSSSFFFFSSSSSFSSSSSSSSSSSSSSS"; enlist ",") 0: 
`:table.csv 

我不希望有重新定義整個表導入的表。有沒有辦法做到這一點?

回答

2

q)p:([p:`p1`p2`p3`p4`p5`p6]name:`nut`bolt`screw`screw`cam`cog;color:`red`green`blue`red`blue`red;weight:12 17 17 14 12 19;city:`london`paris`rome`london`paris`london) 
 
q)sp:([]s:`s1`s1`s1`s1`s4`s1`s2`s2`s3`s4`s4`s1;p:`p$`p1`p2`p3`p4`p5`p6`p1`p2`p2`p2`p4`p5;qty:300 200 400 200 100 100 300 400 200 200 300 400) 
 
q) 
 
q)update `p$p from `sp 
 
`sp 
 
q)meta sp 
 
c | t f a 
 
---| ----- 
 
s | s  
 
p | s p 
 
qty| j

定義外鍵類似於列舉/鑄造,因此使用$超載。

`sp表示表格已更新到位。

+0

沒有重新定義表格的方法嗎?我的桌子有超過600,000行和大約30列 – michaelg

+1

嗨邁克爾,道歉我現在只是看到了這一點。重新定義你的意思是什麼?上面的更新創建了外鍵,並且不會在內存中創建表的副本。謝謝,傑米 – jomahony