有这样一个表,
[jobs_name] [jobs_amount] [img1]
name1 42000
name2 5000 jpg4
name3 5000
name4 0 jpg2
name5 0 jpg3希望用SQL排序后可以得到这样的效果
[jobs_name] [jobs_amount] [img1]
name2 5000 jpg4
name1 42000
name3 5000
name4 0 jpg2
name5 0 jpg3现在的sql是这样的
SELECT
jobs_name,
jobs_amount,
img1
FROM
info_jobs_tbl
ORDER BY jobs_amount DESC , img1 DESC
[jobs_name] [jobs_amount] [img1]
name1 42000
name2 5000 jpg4
name3 5000
name4 0 jpg2
name5 0 jpg3希望用SQL排序后可以得到这样的效果
[jobs_name] [jobs_amount] [img1]
name2 5000 jpg4
name1 42000
name3 5000
name4 0 jpg2
name5 0 jpg3现在的sql是这样的
SELECT
jobs_name,
jobs_amount,
img1
FROM
info_jobs_tbl
ORDER BY jobs_amount DESC , img1 DESC
SELECT
jobs_name,
jobs_amount,
img1
FROM
info_jobs_tbl
ORDER BY jobs_name='name2';
jobs_name,
jobs_amount,
img1
FROM
info_jobs_tbl
ORDER BY a.jobs_amount!=0 && a.img1!="" DESC ,a.img1 DESC ,a.jobs_amount DESC
select * from test order by (jobs_amount <>'' ) desc,img1 <> '' desc;
select name,amount,img1,if(amount>0,1,0) as a,if(img1='0',0,1) b from aa
order by a desc,b desc
) aaa
select name,amount,img1 from (
select name,amount,img1,if(amount>0,1,0) as a,if(img1='0',0,1) b from aa
order by a desc,b desc,amount desc ,img1 desc
) aaa