取每个分组的5条记录

hxy 2004-10-20 06:19:04
select Name,CityId from Company A where Id in (select top 5 Id from Company where CityId=a.CityId)
Order By CityId

每个城市各取5条记录,不过感觉这样效率不高,大家有没更好的方法呢?
...全文
142 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2004-10-20
  • 打赏
  • 举报
回复
这种处理就是楼主自己的那种.
Andy__Huang 2004-10-20
  • 打赏
  • 举报
回复
和victorycyz(中海) 一樣﹐覺得樓主的方法還好﹗
heibai520 2004-10-20
  • 打赏
  • 举报
回复
我想不会的!
这样应该算不错了的!
yingjie821 2004-10-20
  • 打赏
  • 举报
回复
学习中..
软件钢琴师 2004-10-20
  • 打赏
  • 举报
回复
只是来学习不敢妄加评论
victorycyz 2004-10-20
  • 打赏
  • 举报
回复
感觉楼主的更好点吧。
pbsql 2004-10-20
  • 打赏
  • 举报
回复
你那效率已经可以了

或者这样:
select Name,CityId from Company A where (select count(*) from from Company where CityId=a.CityId and id<=a.id)<=5
Order By CityId

不过效率可能需要你验证一下

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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