123
返回列表 发新帖
楼主: bleuz
跳转到指定楼层
上一主题 下一主题
收起左侧

[其他] 一道Facebook DS SQL题

 
🔗
ygmm 2019-5-5 10:52:22 | 只看该作者
全局:
直接用inner join呢?

select A.userid, B.pageid
from tb_userfriends A
inner join tb_userpages B
on A.friendid = B.userid
except
select A.userid, B.pageid
from tb_userfriends A
inner join tb_userpages B
on A.userid= B.userid



补充内容 (2019-5-5 11:22):
下一段错了,多此一举
回复

使用道具 举报

🔗
ygmm 2019-5-5 10:53:42 | 只看该作者
全局:
kela0011 发表于 2018-7-22 09:57
Does this work?

Select f.user_id, p.pg

验证了下,这个不对呀。
回复

使用道具 举报

🔗
jxiong 2019-5-6 10:26:52 | 只看该作者
全局:
请问一下 fb ds 面试都只考sql吗 考不考coding的?
回复

使用道具 举报

🔗
HoraceWang 2019-6-24 09:46:42 | 只看该作者
全局:
谢谢楼主,非常有用的信息!!
回复

使用道具 举报

🔗
moneyall 2019-6-24 23:23:30 | 只看该作者
全局:
with user1 AS (
SELECT DISTINCT users.user_id as userid, pages.page_id as pageid1
FROM users JOIN pages ON users.friend_id = pages.user_id),
page1 AS (
SELECT DISTINCT users.user_id as userid, pages.page_id as pageid2
FROM users JOIN pages ON users.user_id = pages.user_id)
SELECT user1.userid, user1.pageid1
FROM user1 LEFT JOIN page1
ON user1.userid = page1.userid and user1.pageid1 = page1.pageid2
WHERE page1.pageid2 IS NULL

之前几个点赞高的query我拿sql试了下感觉都不是很对。然后自己写了个,刚用SQL试了下,出来结果感觉是对的。但是觉得好像写得太麻烦了。。。
回复

使用道具 举报

🔗
moneyall 2019-6-24 23:27:47 | 只看该作者
全局:
加一句,我觉得上面有楼主说的except很好用!都没有想到!我要给他点赞!
SELECT DISTINCT users.user_id as userid, pages.page_id as pageid1
FROM users JOIN pages ON users.friend_id = pages.user_id
EXCEPT
SELECT DISTINCT users.user_id as userid, pages.page_id as pageid1
FROM users JOIN pages ON users.user_id = pages.user_id
回复

使用道具 举报

🔗
drinkibeer 2020-7-5 13:30:01 | 只看该作者
全局:
hazel712 发表于 2018-8-14 11:18
第二个应该是left join而不是inner join?

你好,可以请问为什么应该是left join吗?
回复

使用道具 举报

🔗
mj97 2020-7-7 11:09:08 | 只看该作者
全局:
感谢楼主提出,最近也在准备
回复

使用道具 举报

全局:
scorpiofay 发表于 2018-12-11 12:54
为啥大家都写得这么复杂?我怎么觉得一个EXCEPT就可以了啊。。。

SELECT T1.UID, T2.LIKED_PID

elegant! 看了下别的回复都太复杂了 这个比较靠谱
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册账号
隐私提醒:
  • ☑ 禁止发布广告,拉群,贴个人联系方式:找人请去🔗同学同事飞友,拉群请去🔗拉群结伴,广告请去🔗跳蚤市场,和 🔗租房广告|找室友
  • ☑ 论坛内容在发帖 30 分钟内可以编辑,过后则不能删帖。为防止被骚扰甚至人肉,不要公开留微信等联系方式,如有需求请以论坛私信方式发送。
  • ☑ 干货版块可免费使用 🔗超级匿名:面经(美国面经、中国面经、数科面经、PM面经),抖包袱(美国、中国)和录取汇报、定位选校版
  • ☑ 查阅全站 🔗各种匿名方法

本版积分规则

>
快速回复 返回顶部 返回列表