我想要一个字符串列的排序顺序,如下所示(数字第一,字母最后):
void f2( B b ) { f1( A{ b.i, b.f } ); }
这是我当前的查询
1
2
...
10
11
...
A
B
C
...
不幸的是,这导致以下排序(2之前的10)
SELECT * FROM PAGES_VIEW ORDER BY chapterTitle
如何实现我想要的订单?
编辑:将我的CAST删除为整数以避免混淆。
答案 0 :(得分:1)
您应该使用case
语句来获取所需的order
。
select * from pages_view
order by (case when cast(chaptertitle as integer) = chaptertitle then 1
else 0 end) desc, cast(chaptertitle as integer), chaptertitle