Mal*_*ist 8 t-sql sql-server natural-sort
我有一个通常只有数字的列(有时它是字母,但这并不重要).
我怎样才能使它自然排序?
目前的排序如下:{1,10,11,12,2,3,4,5,6,7,8,9}
我希望它像这样排序:{1,2,3,4,5,6,7,8,9,10,11,12}
IsNumeric"已损坏",ISNUMERIC(CHAR(13))返回1,CAST将失败.
使用ISNUMERIC(textval +'e0').最终代码:
ORDER BY
PropertyName,
CASE ISNUMERIC(MixedField + 'e0') WHEN 1 THEN 0 ELSE 1 END, -- letters after numbers
CASE ISNUMERIC(MixedField + 'e0') WHEN 1 THEN CAST(MixedField AS INT) ELSE 0 END,
MixedField
Run Code Online (Sandbox Code Playgroud)
您可以混合订单参数......
| 归档时间: |
|
| 查看次数: |
3336 次 |
| 最近记录: |