首页新闻找找看学习计划

SQL JOIN 语句

0
悬赏园豆:15 [已解决问题] 解决于 2017-12-22 21:02

用户表:

用户互相关注表:

fid和tid都是用户id

意思就是fid关注了tid。

例如,求用户id=2的关注集盒

现在我的SQL用的是where id in(select tid from blog_fans where fid =2),

select * from (select *,Row_Number() over(order by id desc) as rowNumber from blog_User ) t where id in(select tid from blog_Fans where fid=2) and t.rowNumber>= @start and t.rowNumber<=@end

这样的SQL怎么来优化?

DZCMS的主页 DZCMS | 初学一级 | 园豆:6
提问于:2017-12-10 20:09
< >
分享
最佳答案
0

;with语句吧,Row_Number的结果放入with语句中,采用inner join 效率会比in强,其他就想不起来了

收获园豆:15
猫出没 | 菜鸟二级 |园豆:208 | 2017-12-11 11:14
其他回答(1)
0

看看执行计划吧。光语句这块没什么,无非就是in和inner join的差别

Daniel Cai | 园豆:10374 (专家六级) | 2017-12-11 09:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册