代码之家  ›  专栏  ›  技术社区  ›  Matt

分页和选择以数据库中的字母开头的行

  •  0
  • Matt  · 技术社区  · 15 年前

    我有一个表,其中每一行都是一个用户名和相关的投票计数

    目标是按用户名进行分页

    所以你可以点击字母C进入C

    但是如果只有2个C,那么你也要显示18个D 或12 D和6 E

    那我该怎么开始呢 查询类似,从任何限制xx,20中选择 我怎样才能找到那个xx,c的起始点,f的起始点,等等

    基本上将第一个字母作为数字,并选择前20个。

    4 回复  |  直到 15 年前
        1
  •  4
  •   Alex Reitbort    15 年前

    从表中选择*。 其中name>='c' 按名称排序 限制20

        2
  •  3
  •   Joel Coehoorn    15 年前
    SELECT TOP 20 * FROM [Table] WHERE [username] >= 'C' ORDER BY [username]
    
        3
  •  1
  •   somacore    15 年前

    你可以选择前20名。

    SELECT Top 20 * FROM Users WHERE Username >= 'C' ORDER BY Username
    
        4
  •  1
  •   DVK    15 年前

    最佳方法(假设页面转到Web服务器,并且从Web服务器请求第n页):

    select bottom 20 from 
     ( select top N*20 *
     from   myTable
     order by username
     ) TOPNPAGES