求一个联合查询,就是那中像csdn上我关注谁的功能

IMAGSE 2009-02-18 11:46:42
现在设计的有两个表,一个会员基本信息表:MemberInfo
结构如下:
id nickname gender
1 哈哈 1
2 嘿嘿 0
3 嘻嘻 1
4 呼呼 1

另一表是记录我关注谁的表:AttentionMember
结构如下:
id MemberID AttentionObjectID
1 1 2
2 1 3
3 1 4
4 2 1
5 2 3

每个会员都可以并且只能查看自己关注的会员,那么上面这种结构的两个表能不能实现这种功能

因为我用的AspnetPager分页控件,不知道一个sql语句能否直接得出结果

请各位指点,谢谢~
...全文
163 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
dawugui 2009-02-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 IMAGSE 的回复:]
我想要的结果就是,比如会员哈哈,嘿嘿,嘻嘻,和呼呼,分别查看自己关注的会员时候,就列出他们关注的好友
[/Quote]

如果是全部查:

select m.MemberID , n.nickname
from AttentionMember m , MemberInfo n
where m.AttentionObjectID = n.id

如果只查某个人:

select m.MemberID , n.nickname
from AttentionMember m , MemberInfo n
where m.AttentionObjectID = n.id and m.AttentionObjectID = 1 (--或其他)
IMAGSE 2009-02-18
  • 打赏
  • 举报
回复
我想要的结果就是,比如会员哈哈,嘿嘿,嘻嘻,和呼呼,分别查看自己关注的会员时候,就列出他们关注的好友
-狙击手- 2009-02-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 libin_ftsafe 的回复:]
SQL codeselect b.* from AttentionMember a,MemberInfo b where a.id=b.MemberID and a.AttentionObjectID=@UserID
[/Quote]

.
子陌红尘 2009-02-18
  • 打赏
  • 举报
回复

create table MemberInfo(id int,nickname varchar(10),gender int)
insert into MemberInfo select 1,'哈哈',1
insert into MemberInfo select 2,'嘿嘿',0
insert into MemberInfo select 3,'嘻嘻',1
insert into MemberInfo select 4,'呼呼',1

create table AttentionMember(id int,MemberID int,AttentionObjectID int)
insert into AttentionMember select 1,1,2
insert into AttentionMember select 2,1,3
insert into AttentionMember select 3,1,4
insert into AttentionMember select 4,2,1
insert into AttentionMember select 5,2,3
go

declare @UserID int
set @UserID = 3

select b.* from AttentionMember a,MemberInfo b where b.id=a.MemberID and a.AttentionObjectID=@UserID
/*
id nickname gender
----------- ---------- -----------
1 哈哈 1
2 嘿嘿 0
*/
go

drop table AttentionMember,MemberInfo
go
dawugui 2009-02-18
  • 打赏
  • 举报
回复
select m.MemberID , n.nickname
from AttentionMember m , MemberInfo n
where m.AttentionObjectID = n.id
子陌红尘 2009-02-18
  • 打赏
  • 举报
回复
select b.* from AttentionMember a,MemberInfo b where a.id=b.MemberID and a.AttentionObjectID=@UserID
水族杰纶 2009-02-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wufeng4552 的回复:]
SQL code--?具體字段涵義是什麼?,如何關聯,結果是什麼?
select * from MemberInfo m,AttentionMember a where a.id=m.AttentionObjectID
[/Quote]
select * from MemberInfo m,AttentionMember a where a.id=m.AttentionObjectID
水族杰纶 2009-02-18
  • 打赏
  • 举报
回复
--?具體字段涵義是什麼?,如何關聯,結果是什麼?
select * from MemberInfo m,AttentionMember a where a.id=m.AttentionMember
IMAGSE 2009-02-18
  • 打赏
  • 举报
回复

create table MemberInfo(id int,nickname varchar(10),gender int)
insert into MemberInfo select 1,'哈哈',1
insert into MemberInfo select 2,'嘿嘿',0
insert into MemberInfo select 3,'嘻嘻',1
insert into MemberInfo select 4,'呼呼',1

create table AttentionMember(id int,MemberID int,AttentionObjectID int)
insert into AttentionMember select 1,1,2
insert into AttentionMember select 2,1,3
insert into AttentionMember select 3,1,4
insert into AttentionMember select 4,2,1
insert into AttentionMember select 5,2,3
go

declare @UserID int
set @UserID = 1

select b.* from AttentionMember a,MemberInfo b where b.id=a.AttentionObjectID and a.MemberID =@UserID
/*
id nickname gender
----------- ---------- -----------
2 嘿嘿 0
3 嘻嘻 1
4 呼呼 1
*/
go

drop table AttentionMember,MemberInfo
go


修改之后这样是我要的结果~
IMAGSE 2009-02-18
  • 打赏
  • 举报
回复
感谢各位,中午刚刚回复一个帖子就停电了,呵呵,刚刚来上班就看到了,感谢大家的热心帮助

我现在就去结贴去~

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧