我是初学者。
我有两个 .txt 文件,我使用 R 和 sqldf pakage 来查询它们
第一个表 (venues.txt) 如下所示:
userID,venueID,year,month,date,hour
1302,47,2012,2,24,11
45,132,2012,2,24,11
24844,86,2012,2,24,11
896,248,2012,2,24,11
5020,29,2012,2,24,11
第二个表(friends.txt)如下所示:
userID,friendID
1,5
1,9
1,50
1,102
1,300
我想查询用户(比如 userID=1)与他的一个或多个朋友(friendID)一起访问的场所(venueID)
注意:friends 表的 userID、friendID 都可以链接到场所表中的 userID
查询结果应如下所示:
venueID friendID
47 5
47 9
29 102
86 102
我可以使用许多单独的查询来做到这一点,然后将它们加入一个表中,但我的数据集非常大。有没有更简单的方法来做到这一点?
我能够查询用户或其朋友访问过的所有场所:
sqldf("select userID, venueID from data
where userID=1 OR userID IN (select friendID from freind where userID=1)")
非常感谢。