在选择语句中添加字母列

时间:2019-01-03 09:10:17

标签: sql-server

我想在写选择查询时添加字母列

我的查询是:-

select empname, address from Employee table 

我想获取

之类的数据
empname address alphabetcolumn
Pramod  USA       A
xyz     USA       B

2 个答案:

答案 0 :(得分:1)

您可以使用以下方法。

ASCII表A中的

从65开始。ROW_NUMBER从1开始。因此,我将row_number与64相加得到65+。

select 
  empname, 
  address,
  CHAR((ROW_NUMBER() OVER(ORDER BY empname ASC)) + 64) AS ALPHABET
from Employee

支持两个字符,您可以使用此方法

With r as 
(  
   select 
     empname, 
     address,
     CHAR((ROW_NUMBER() OVER(ORDER BY empname ASC)) + 64) AS rn
   from Employee
)
select IIF(rn / 26 = 0, '', char(rn/26 + 64)) + char((rn -1) % 26 +65)  
from r;

答案 1 :(得分:0)

我认为这不是OP的目标,而是基于有限的信息。

您可以使用以下方法向表中添加新列:

ALTER TABLE Employee ADD alphabetcolumn char(1);