asp.net - 如何按字母顺序显示 row_number

标签 asp.net sql .net sql-server sql-server-2008

SELECT Row_number()
         OVER (
           ORDER BY setsid) AS Set_No,
       setsid,
       testid
FROM   examsets
WHERE  testid = 4

结果是:-

Set_No               
------------------- 
1                    
2                    
3                   
4                    
5                    
6                   
7   

我想要结果为:-

Set_No               
------------------- 
a                    
b                    
c                   
d                    
e                    
f                   
g 

我该怎么做?

最佳答案

你可以使用这个。它不会处理返回超过 26 行的情况。

char(96+row_number() over(order by setsid))

AAZZ 将为您提供 676 个不同的值。

select char(((T.N / 26) % 26) + 65) + char((T.N % 26) + 65) as Set_No
from (
     select row_number() over(order by setsid) - 1 as N
     from YourTable
     ) as T

SQL Fiddle

关于asp.net - 如何按字母顺序显示 row_number,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20697783/

相关文章:

c# - 如何将CSS应用于表格行

MySql - 查询如何编写嵌套条件?

mysql - MariaDB/MySQL - 如何根据嵌套对象的键查询 JSON

.net - 从 MSBUILD 脚本获取次要版本和主要版本

c# - WPF 程序在静默运行时无法正常运行

ASP.Net LinkBut​​ton CommandArgument 属性忽略 <%= .. %>

c# - System.ComponentModel - 忽略属性

asp.net - 如何动态更改母版页的母版页?

sql - 为什么在使用 "insert select"或 "merge"时不会在每一行触发触发器

c# - 为什么实例化 Azure 移动服务时出错?