2
給定一個數字,您如何將其轉換爲字母?將數字轉換爲字母
給定一個數字,您如何將其轉換爲字母?將數字轉換爲字母
您可以將現有的邏輯只是轉換成T-SQL標量函數,就像這樣:
CREATE FUNCTION dbo.fnColumnNameFromIndex(@i int)
RETURNS varchar(3)
AS
BEGIN
DECLARE @dividend int, @letters varchar(3), @modulo int
SET @dividend = @i
SET @letters = ''
WHILE @dividend > 0
BEGIN
SET @modulo = (@dividend - 1) % 26
SET @letters = CHAR(65 + @modulo) + @letters
SET @dividend = CONVERT(int, (@dividend - @modulo)/26)
END
RETURN @letters;
END
GO
這樣稱呼它:
SELECT dbo.fnColumnNameFromIndex(2000)
...承認沒有設置邏輯,但我不認爲這是一個設置邏輯問題。