Left Join with b.key being NULL in R
If I understand correctly:

Table1 &lt;- data.frame(key = seq(1,100),a.data = rnorm(100))
Table2 &lt;- data.frame(key = c(seq(1,30),rep(NA,30)), b.data = seq(1,60))


##Assuming this is what you want
library(sqldf)
sql.ans &lt;- sqldf("select a.*, b.key from Table1 a LEFT OUTER JOIN Table2 b on a.key = b.key where b.key is null")

## dplyr version
library(dplyr)

dplyr.ans &lt;- Table1 %&gt;% filter(!key %in% Table2$key)

## Regular R version
R.ans &lt;- Table1[which(!Table1$key %in% Table2$key),]


EDIT after dummy data and expected output

dplyr.ans2 &lt;- left_join(df1,df2, by = c("Key1" = "Key2"))
 Key1 BV1  BV2
 1   A1 100  150
 2   A2 200  250
 3   A3 300  350
 4   A4 400 &lt;NA&gt;
 5   A5 500 &lt;NA&gt;