我有一个通常只有数字的列(有时它是字母,但这并不重要).
我怎样才能让它自然排序?
目前的排序如下:{1,10,11,12,2,3,4,5,6,7,8,9}
我希望它像这样排序:{1,9,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
您可以混合订单参数……