asp.net 排名的问题

yang430981 2011-08-04 02:18:49

据图 怎么根据票数算出 这个人在数据里的排名了


请给位大侠帮忙!!!
...全文
440 44 打赏 收藏 转发到动态 举报
写回复
用AI写文章
44 条回复
切换为时间正序
请发表友善的回复…
发表回复
Lucky_6Q 2011-08-07
  • 打赏
  • 举报
回复
[Quote=引用 38 楼 yang430981 的回复:]
那你告诉我一个放到缓存里方法呗 谢谢了
[/Quote]何必就写个sql呢。
  • 打赏
  • 举报
回复
[Quote=引用 39 楼 z195389542 的回复:]
你写存储过程去判断撒。
在里面可以你随意的根据你想要的去判断。
何必就写个sql呢。
[/Quote]谢谢了
qgqch2008 2011-08-07
  • 打赏
  • 举报
回复
哎,简单的问题,怎么搞的那么复杂咧。。。
yubofighting 2011-08-07
  • 打赏
  • 举报
回复

select rank() over(order by 票数),* into #x from tb

select * from #x
Yujiexiaoyu 2011-08-07
  • 打赏
  • 举报
回复
有票数应该很简单啊,就是SQL啊。
yang430981 2011-08-05
  • 打赏
  • 举报
回复
假如在同一个类型里面出现票数相同 但是我想根据时间来区分 先注册的排在前面
z195389542 2011-08-05
  • 打赏
  • 举报
回复
你写存储过程去判断撒。
在里面可以你随意的根据你想要的去判断。
何必就写个sql呢。
yang430981 2011-08-05
  • 打赏
  • 举报
回复
那你告诉我一个放到缓存里方法呗 谢谢了
冬你个冬 2011-08-05
  • 打赏
  • 举报
回复
呵呵,其实这个问题 主要要看什么样的系统。如果投票很高的系统 那么直接放到数据库里面就是昏招。放到缓存里面才是好的。而在缓存里面 每当有人投票或者你每过多长时间 你重新排序就好了。
yang430981 2011-08-05
  • 打赏
  • 举报
回复
strSql.Append("select count(id)+1 from [Activities1107] where AType='" + AType + "' and ");
strSql.Append(" ToVote>(select ToVote from [Activities1107] where Phone='" + Phone + "')");

这是我实现排名的SQL  但是假如在同一个类型里面出现票数相同 但是我想根据时间来区分 先注册的排在前面  请给位帮帮忙
baysos 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用 34 楼 zzxap 的回复:]
我发现越是简单的问题浏览量就越高,居然上首页头条了
[/Quote]
介说明,金字塔啊……
zzxap 2011-08-05
  • 打赏
  • 举报
回复
我发现越是简单的问题浏览量就越高,居然上首页头条了
子夜__ 2011-08-04
  • 打赏
  • 举报
回复
可以啊 你直接
select count(*) from table where 票数>35555

排名就是结果+1了。
haiziguo 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 xiaoaldawn 的回复:]
引用 6 楼 yang430981 的回复:

我这只是根据ID读取的一条详细信息
麻烦各位贴个SQL代码 或怎么实现了



select rownumber() over(order by 票数 ) as rowId,* from xx表

这样就可以 知道是 第几名了 。 rowId 是就可以 当名次了
[/Quote]
这个是sql2005以上版本支持的
CalvinR 2011-08-04
  • 打赏
  • 举报
回复
楼上的 我也出现这个问题啊
lml926it 2011-08-04
  • 打赏
  • 举报
回复
在你这个一条数据的sql语句里加一个字段,这个字段是查出来的一个排名就可以实现了呗
ycproc 2011-08-04
  • 打赏
  • 举报
回复
把数据加载在 datatable里面

这个里面一个 select方法

你动态的切换 排序条件

然后再绑定 datatable数据源

不要跟数据库打交道了了
yang430981 2011-08-04
  • 打赏
  • 举报
回复
现在应该好了 等我测试一天 后天可以了的话 在给各位加分 谢谢各位的帮忙
yang430981 2011-08-04
  • 打赏
  • 举报
回复
[Quote=引用 22 楼 huangwenquan123 的回复:]
SQL code

select row_number() over(order by ToVote desc) rowid,* from [Activities1107] where AType='最具人气笑脸' and Phone='15369558774' )
[/Quote]

你这里改动的其他类型又不行了
antiking 2011-08-04
  • 打赏
  • 举报
回复
去看下排名函数吧 select a1,a2,rank () over (order by a1) rank from test;
加载更多回复(24)

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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