在 SQL Server 中对包含数字的 VARCHAR 列进行排序
对包含字母和数字混合的 VARCHAR 列进行排序可能具有挑战性,尤其是当所需的顺序是数字时
方法:
建议的方法是用前导字符填充数值,以确保它们都具有相同的字符串长度。这允许 SQL Server 以数字方式比较值。
解决方案:
SELECT MyColumn FROM MyTable ORDER BY CASE ISNUMERIC(MyColumn) WHEN 1 THEN REPLICATE('0', 100 - LEN(MyColumn)) + MyColumn ELSE MyColumn END
在此查询中:
示例:
考虑名为“的列” MyColumn”,内容如下值:
使用上述查询,排序结果为:
1 2 10 A B B1
以上是如何在 SQL Server 中对混合数字和字母的 VARCHAR 列进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!