按字母排序,以字母开头

时间:2016-03-28 06:51:28

标签: sql oracle sql-order-by

我如何才能获得以字母开头的字段排序的记录?

例如,我在一个字段中有这个值:

TABLE: mytable
ROW: myrow
ROW
-----
A
B
C
D

=>从“C”字母开始排序

我想获得此查询结果

ROW
-----
C
D
A
B

@sagi解决方案

SELECT * FROM mytable
ORDER BY CASE WHEN myrow >= 'C' THEN 1 ELSE 0 END DESC,
     myrow ASC

1 个答案:

答案 0 :(得分:0)

您可以使用CASE EXPRESSION执行此操作:

SELECT * FROM YourTable
ORDER BY CASE WHEN YourColumn >= 'C' THEN 1 ELSE 0 END DESC,
         YourColumn ASC