如何合并唯一列值上的数据框?

我对数据框很陌生。假设我有2个数据框:

df1
user_id    username firstname lastname 
 123         abc      abc       abc
 456         def      def       def 
 789         ghi      ghi       ghi
 800         jkl      jkl       jkl        

df2
user_id    username firstname lastname 
 456         def      bbb       bbb 
 800         jkl      ccc       ccc

我想要结果数据框:

df3
user_id    username firstname lastname 
 123         abc      abc       abc
 456         def      bbb       bbb 
 789         ghi      ghi       ghi
 800         jkl      ccc       ccc        

基本上,我想合并df1和df2,如果user_id相同,我想从df2中获取行。我该怎么做呢?