R:连接中的差异:Dplyr和sql

时间:2018-11-30 16:31:23

标签: r oracle dplyr odbc r-dbi

我想了解dplyr联接和sql联接之间的区别。 我与R中的 oracle 数据库建立了开放连接:

con <- dbConnect(odbc::odbc(), …)

第一个请求:

dbGetQuery(con, "select * 
   from result join test on result.test_1 = test.test_1 
   join sample on test.sample = sample.id_2") %>% 
   setNames(make.names(names(.), unique = TRUE) )%>% 
   as_tibble()

9541行(我想要的是!)

第二个请求:

tbl(con, "result")%>%
   inner_join(tbl(con, "sample"), by = c("test_1" = "id_2"))%>%
   collect()

使用 2688行

test_1和id_2是字符字段,在其中带有空格,并在末尾加数字。例如:“ 3333”。

谢谢

1 个答案:

答案 0 :(得分:1)

在SQL中,我看到3个表,在R中,我看到2个表:结果和示例表。

这可能是造成差异的原因。