根据SQL Server中的字符数排序

时间:2014-01-12 16:42:59

标签: sql sql-server sorting

我有一张这样的表:

NAME
-----
ABCD
PQRST
QWERTYU
XGGABC

我需要在第一个上显示最短的名字。我想知道如何排序这些如下

NAME
-----
ABCD
PQRST
XGGABC
QWERTYU

2 个答案:

答案 0 :(得分:3)

使用:

order by len(name), name;

答案 1 :(得分:1)

     SELECT * FROM (

     SELECT 'XGGABC' as NAME
     UNION 
     SELECT 'ABCD' AS NAME
     UNION
     SELECT 'PQRST' AS NAME
     UNION
     SELECT 'QWERTYU' AS NAME

     )tmp ORDER BY len(NAME),NAME