full join时,如何将matchingCols合并,并且避免列出所有列名?

文档中的例子,full join时,可以把id和t2_id合到一列么,类似这样一张表我只想有三列,然后值有空的,但是id列没有空的;并且在select中避免列出所有列名,怎么做?attachments-2022-01-4mVfTJEs61de3529bfc3f.png

请先 登录 后评论

2 个回答

Shena Mao

可以通过dropColumns!这个函数,drop多余的列。这样就不用列出所有列名了。参考下面的例子:

t1= table(1 2 3 3 as id, 7.8 4.6 5.1 0.1 as value);
t2 = table(5 3 1 as id,  300 500 800 as qty);
a = (select iif(id==NULL, t2.id,id) as id, * from fj(t1, t2, `id)).dropColumns!(`t2_id`t1_id)
a
请先 登录 后评论
Margo

可以用 nullFill 合并id 和 t2_id。
nullFill(X, Y) 的作用是使用Y来填充X中的NULL值,具体用法请参考:nullFill — DolphinDB 2.0 documentation

attachments-2023-03-7ZFKSwFf64229fe479b6a.png

请先 登录 后评论
  • 2 关注
  • 0 收藏,1109 浏览
  • ricecake 提出于 2022-01-12 09:59