加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

数据表可以为3个或更多的数据表执行左连接吗?

发布时间:2020-12-12 08:42:16 所属栏目:MsSql教程 来源:网络整理
导读:我已经搜索了这个简单问题的答案,但找不到类似的问题.我有3个数据表: set.seed(0)demo - data.table(id = 1:10,demo.var = rnorm(10),key = 'id'); demolab - data.table(id = 1:7,tc = rnorm(7),key = 'id'); labanthro - data.table(id = 4:9,bmi = rnorm(
我已经搜索了这个简单问题的答案,但找不到类似的问题.我有3个数据表:
set.seed(0)
demo <- data.table(id = 1:10,demo.var = rnorm(10),key = 'id'); demo
lab <- data.table(id = 1:7,tc = rnorm(7),key = 'id'); lab
anthro <- data.table(id = 4:9,bmi = rnorm(6),key = 'id'); anthro

实验室和anthro中的所有ID都在演示数据表中,但实验室和anthro在演示中包含不同的ID的子集

lab[demo]
anthro[demo]

给出我想要的信息:所有10个ID与实验室或anthro数据表中的附加信息,但是有没有以类似的方式将所有3合并?我已经尝试过一些排列

anthro[lab][demo]

但是这给了保存仅在实验室数据中的ID的anthro信息. – 没有关于ID 8和9的伪造信息

提前感谢任何帮助

解决方法

anthro[lab[demo]]
#      id        bmi         tc     demo.var
#   1:  1         NA  0.7635935  1.262954285
#   2:  2         NA -0.7990092 -0.326233361
#   3:  3         NA -1.1476570  1.329799263
#   4:  4 -0.8919211 -0.2894616  1.272429321
#   5:  5  0.4356833 -0.2992151  0.414641434
#   6:  6 -1.2375384 -0.4115108 -1.539950042
#   7:  7 -0.2242679  0.2522234 -0.928567035
#   8:  8  0.3773956         NA -0.294720447
#   9:  9  0.1333364         NA -0.005767173
#  10: 10         NA         NA  2.404653389

内部表始终是执行外部连接的内部表,因此此嵌套确保具有索引值的超级集合的表始终为内部表.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读