R: Разница в соединениях: Dplyr и SQL - PullRequest
0 голосов
/ 30 ноября 2018

Я хотел бы понять разницу между соединениями dplyr и соединениями sql.У меня есть открытое соединение с базой данных oracle в R:

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

1-й запрос:

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 строк (что я хочу!)

2-й запрос:

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

дает толпу с 2688 строками

test_1 и id_2 являются символамиполя с пробелами в нем и числа в конце.Например: «3333».

Спасибо

1 Ответ

0 голосов
/ 01 декабря 2018

В SQL я вижу 3 таблицы, в RI - 2 таблицы: таблица результатов и образец.

Вот вероятная причина различия.

...