首页 新闻 会员 周边 捐助

ms sql一次存储过程查询语句

0
悬赏园豆:15 [已解决问题] 解决于 2015-10-01 14:17

假设我关注了很多好友,每个好友关注的时间不同,我现在需要查询出我关注该好友之后,该好友的动态信息,假设表结构如下:

--假设MemberId为我(编号为1),FriendId为好友ID,AddTime为好友时间
create table TB_MyFriend
(
    ID int identity primary key,
    MemberId int,
    FriendId int,
    AddTime datetime
)
--消息表,MemberId为发布者的ID
create table TB_News
(
    ID int identity primary key,
    MemberId int,
    Info nvarchar(500),
    AddTime datetime
)

我想通过一个查询语句把好友消息读取出来,应该怎么做

imluzhi的主页 imluzhi | 初学一级 | 园豆:37
提问于:2015-10-01 12:45
< >
分享
最佳答案
0

你是要根据什么来查?个人Id可能存在多个好友Id嘛?

 不知道我是不是可以这样理解

create table TB_MyFriend

( ID int identity primary key, MemberId int, FriendId int, AddTime datetime )

--消息表,MemberId为发布者的ID

create table TB_News ( ID int identity primary key, MemberId int, Info nvarchar(500), AddTime datetime )

 

消息表中的MemberId与好友表中的好友Id相关联起来?如果是的话,sql如下:

select MemberId as myId, FriendId,mf.AddTime as AddTime,n.Info as Content ,n.AddTime as SetUpTime from TB_MyFriend mf left join TB_News n on mf.FriendId=n.MemberId where mf.MemberId=个人Id

收获园豆:15
如此低调的男人 | 小虾三级 |园豆:842 | 2015-10-01 14:16

我想复杂了,你是对的,脑子混沌了

imluzhi | 园豆:37 (初学一级) | 2015-10-01 14:17

@imluzhi: 额,可是这个不是存储过程的啊,我还在想存储过程呢,好久没有接触存储过程了

如此低调的男人 | 园豆:842 (小虾三级) | 2015-10-01 14:19

@夕边日落: 不用想了

create pro FindFirend

(

  @MemberId int

)

select

from TB_MyFriend f,TB_News n

where  f.MemberId=@MemberId and f.AddTime>n.AddTime and n.MemberId=f.FriendId

imluzhi | 园豆:37 (初学一级) | 2015-10-01 14:21

@imluzhi: 哦哦,原来存储过程这么简单呀?嘿嘿。。。。

如此低调的男人 | 园豆:842 (小虾三级) | 2015-10-01 14:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册