为了账号安全,请及时绑定邮箱和手机立即绑定

我要用sql查询出来,我所发布的帖子和我关注的用户发布的帖子,这个sql该怎么写啊?

我要用sql查询出来,我所发布的帖子和我关注的用户发布的帖子,这个sql该怎么写啊?

繁星点点滴滴 2018-10-24 08:06:34
select t.*from talk twhere t.user_id = 2Unionselect t.*from talk t, user_contact cwhere c.user_id = 2 and c.contact_type = 1 and c.be_user_id = t.user_id这么写可以但是不想这么写 ,想用 内连接或者左连接存在一种情况就是这个user在user_contact 表里面没数据,代表他没关注任何人user_id = 1 是用户的id,也就是我的idselect t.* from talk t left join user_contact c on c.user_id = t.user_id where t.user_id = 1 or (c.user_id = 1 and c.be_user_id = t.user_id and c.contact_type = 1)搞不明白哪里有错啊,为啥就会有重复数据呢我这样写查询出来有重复数据user_contact是用户关系表talk 是帖子表帖子表talk有存发布帖子的用户的user_id然后用户关系表user_contact 存了 user_id,be_user_id是被关注的用户的id,contact_typ_type是用户关系类型,1为关注类型求教,不知道该怎么写了
查看完整描述

1 回答

?
Helenr

TA贡献1780条经验 获得超4个赞

select * from talk 
where user_id=1 or user_id in (select be_user_id from user_contact where user_id=1 and contact_type = 1)


查看完整回答
反对 回复 2018-10-24
  • 1 回答
  • 0 关注
  • 701 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信