按照常规的设计涉及到 几个表
[user] 用户信息表
id (int)
name
[user_msg] 用户发表动态的表
uid (int)
date
content
[user_care] 用户关注表
userid (int)
useridb (int)
如果我关注了1000个用户
那么用户中心首页把这1000个用户的动态,按照时间顺序展现出来前100 条,可以分页
那么sql 就是
select top 100 * from [user_msg] where uid in(select useridb from [user_care] where userid=我的用户id) order by date desc;
这样用 in 性能是不是非常糟糕??
有没有更好的办法?如何设计呢?
[user] 用户信息表
id (int)
name
[user_msg] 用户发表动态的表
uid (int)
date
content
[user_care] 用户关注表
userid (int)
useridb (int)
如果我关注了1000个用户
那么用户中心首页把这1000个用户的动态,按照时间顺序展现出来前100 条,可以分页
那么sql 就是
select top 100 * from [user_msg] where uid in(select useridb from [user_care] where userid=我的用户id) order by date desc;
这样用 in 性能是不是非常糟糕??
有没有更好的办法?如何设计呢?