java 排序的sql语句_记一次多字段排序的sql使用if语句问题

1ca488d6866fe4a88465fe5a260fa8c9.png

以上语句无法满足要求

实现如下:

1、mysql和oracle都支持

SELECT department_id,order_expected_amount,administrator_id, case administrator_id when 0 then -1 else order_expected_amount end as orderByNumber FROM order_calculate_collect WHERE `month`=4 ORDER BY department_id,orderByNumber desc;

0953fcefbf10cdcb4f26ef3e97561890.png

2、只支持mysql

SELECT department_id,order_expected_amount,administrator_id FROM order_calculate_collect WHERE `month`=4 ORDER BY  department_id,if(administrator_id = 0,1,0),order_expected_amount desc;

4f855487160535bc763454bd55380392.png

总结:验证了个事 if 这个只作用一行数据,我一直以为是if 作用完这一行 其他按着这个字段排序

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值