如果要把Username包含'Q'的排前面:select .... order by (case when charindex('Q',Username)>0 then 0 else 1 end),Username 如果要把Username首字符为'Q'的排前面:select .... order by (case left(Username,1) when 'Q' then 0 else 1 end),Username
select * from @ttt order by (case left(Username,1) when 'Q' then 0 else 1 end),Username
select .... order by (case left(Username,1) when 'Q' then 0 else 1 end),Username
Q1,Q2,Q3,Q4,Q4,Q224只是例子,如果是1212Q21,sfssfQfsffff呢?
to : libin_ftsafe(子陌红尘) 请问一下, select * from @ttt order by (case left(Username,1) when 'Q' then 0 else 1 end),Username中的(case left(Username,1) when 'Q' then 0 else 1 end) 是什么原理吗?
select * from ttt order by (case when charindex('Q',Username)>0 then 0 else 1 end),Username
order by
(case when charindex('Q',Username)>0 then 0 else 1 end),Username
如果要把Username首字符为'Q'的排前面:select ....
order by
(case left(Username,1) when 'Q' then 0 else 1 end),Username
create table ttt(UId int identity(1,1),UserName varchar(50))
GO
insert ttt values('李8')
insert ttt values('李2')
insert ttt values('李ab')
insert ttt values('李cvvvv')
insert ttt values('李小')
insert ttt values('刘a')
insert ttt values('刘b')
insert ttt values('Q1')
insert ttt values('Q2')
insert ttt values('Q3')
insert ttt values('Q4')
insert ttt values('Q4')
insert ttt values('Q224')
GOselect * from ttt order by username
select *
from 表
order by case when left(Username,1)='Q' then 0 else 1 end,Username
***************************************************************************
declare @ttt table(UId int identity(1,1),UserName varchar(50))insert @ttt values('李8')
insert @ttt values('李2')
insert @ttt values('李ab')
insert @ttt values('李cvvvv')
insert @ttt values('李小')
insert @ttt values('刘a')
insert @ttt values('刘b')
insert @ttt values('Q1')
insert @ttt values('Q2')
insert @ttt values('Q3')
insert @ttt values('Q4')
insert @ttt values('Q4')
insert @ttt values('Q224')
select * from @ttt
order by
(case left(Username,1) when 'Q' then 0 else 1 end),Username
order by
(case left(Username,1) when 'Q' then 0 else 1 end),Username
Q1,Q2,Q3,Q4,Q4,Q224只是例子,如果是1212Q21,sfssfQfsffff呢?
select * from @ttt
order by
(case left(Username,1) when 'Q' then 0 else 1 end),Username中的(case left(Username,1) when 'Q' then 0 else 1 end) 是什么原理吗?
order by
(case when charindex('Q',Username)>0 then 0 else 1 end),Username