SQL Server 中 NVARCHAR 列的按子句排序

Zer*_*ity 0 sql-server nvarchar sql-server-2005 sql-order-by

我需要为该nvarchar列排序。问题是该列没有相同的条目模式,该列的某些行的示例是

12    
9     
TEF      
78F    
T2R
Run Code Online (Sandbox Code Playgroud)

如何按 order By 子句对此列进行排序?我唯一感到宽慰的是,该列仅包含数字和字母数字字符。

gbn*_*gbn 5

ORDER BY
   RIGHT(REPLICATE(N' ', 500) + MyValue, 500)
Run Code Online (Sandbox Code Playgroud)

所以

9
12
78F
T2R
TEF 
Run Code Online (Sandbox Code Playgroud)

变成

            9
           12
          78F
          T2R
          TEF 
Run Code Online (Sandbox Code Playgroud)

哪个会正确排序

你不能依赖 ISNUMERIC