因为你这个季度是字符串,字符串排序是先排首位的,所以1,10都会排在2前面
两种方法改,一个是ORDER BY CASE WHEN自己设定排序
select
(case when 你的条件 then '1-3'
when 你的条件 then '4-6'
when 你的条件 then '7-9'
when 你的条件 then '10-12'
end) jd
from 表
order by
(case when 你的条件 then '1'
when 你的条件 then '2'
when 你的条件 then '3'
when 你的条件 then '4'
end)
另一个是select case when 的时候设定为1234,在显示的时候用形态转换1为1-3,……