84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
MySQL查询用户表中所有记录,按ID降序排序,如果用户状态为0(未激活),则注册时间升序,排在结果最后,这个SQL.该怎么写呢?
ringa_lee
假设status=1为激活,0未激活select *from user order by status desc,case status when 1 then id end desc,case status when 0 then created_at end asc;
select *from user order by status desc,case status when 1 then id end desc,case status when 0 then created_at end asc;
select * from user order by id ASC , status ASC , register_time ASC;这样子是你要的效果咩,如果不符合我再改
select * from user order by id ASC , status ASC , register_time ASC;
(select from user where status=1 order by id desc) union all (select from user where status=0 order by register_time asc)
假设status=1为激活,0未激活
select *from user order by status desc,case status when 1 then id end desc,case status when 0 then created_at end asc;
select * from user order by id ASC , status ASC , register_time ASC;
这样子是你要的效果咩,如果不符合我再改(select from user where status=1 order by id desc) union all (select from user where status=0 order by register_time asc)