一句查询语句不太明白,麻烦各位给解释解释。

Surlary 2007-01-13 01:22:39
select * from tablename b where id in(select top 2 id from tablename a where a.parentid=b.parentid order by sort desc,adddate desc)

这是一句选出各个parentid的前两条的查询,我不太明白parentid=b.parentid的意思,为什么要用这样的条件,能不能给我讲讲这条查询执行的具体过程?

有没有相关方法的资料或者参考,麻烦给个链接,谢谢各位。
...全文
133 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sanlng 2007-01-13
  • 打赏
  • 举报
回复
那是相同的表吗?级联查询吧
soldierluo 2007-01-13
  • 打赏
  • 举报
回复
不好意思,错了

还以为是两个相同的表呢
soldierluo 2007-01-13
  • 打赏
  • 举报
回复
为什么要用这样的条件,能不能给我讲讲这条查询执行的具体过程?

看不出有什么用

过程是首先执行子查询(即括号内的),然后在执行主查询,主查询每执行一次就与子查询的结果比较一次,看是否符合条件
Zeilg1981 2007-01-13
  • 打赏
  • 举报
回复
这样查询的效率不高吧?
lizhizhe2000 2007-01-13
  • 打赏
  • 举报
回复
表的自身连接查询!
与两个表的连接查询没什么本质分别,把它们当做两个不同的表就OK了
Surlary 2007-01-13
  • 打赏
  • 举报
回复
我不是说这个等式不明白,是说这种方式。
eivent() 你学过SQL SERVER吧!
那我见意你在深入解释一下
eivent 2007-01-13
  • 打赏
  • 举报
回复
你学过SQL SERVER吧!
那我见意你在去深入了解一下

34,594

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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