栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

SQL自定义排序规则

SQL自定义排序规则

SQL自定义排序规则 原数据

结果顺序数据显示

Apply:提交请求
Review:等待回复
Finish:任务完成
按日期和状态排序,先状态为:提交请求(Apply)—按时间倒序,然后状态为:等待回复(Review)—按时间倒序,然后状态为:任务完成(Finish)—按时间倒序。

建表语句
DROp TABLE IF EXISTS `customsort`;
CREATE TABLE `customsort` ( `status` VARCHAr ( 255 ), `date1` date );
INSERT INTO `customsort` VALUES ('Review', '2022-01-11');
INSERT INTO `customsort` VALUES ('Apply', '2022-01-11');
INSERT INTO `customsort` VALUES ('Review', '2022-01-01');
INSERT INTO `customsort` VALUES ('Finish', '2022-01-14');
INSERT INTO `customsort` VALUES ('Apply', '2022-01-01');
INSERT INTO `customsort` VALUES ('Review', '2022-01-05');

使用 case when 条件 then 结果 ........ end

SELECT STATUS
	,
	date1,
	( CASE WHEN STATUS = 'Apply' THEN 0 WHEN STATUS = 'Review' THEN 1 WHEN STATUS = 'Finish' THEN 2 ELSE 3 END ) type 
FROM
	customsort

给status赋值有排序大小的type

自定义排序SQL
SELECt STATUS
	,
	date1 
FROM
	customsort 
WHERe
	STATUS IN ( 'Apply', 'Review', 'Finish' ) 
ORDER BY
	( CASE WHEN STATUS = 'Apply' THEN 0 WHEN STATUS = 'Review' THEN 1 WHEN STATUS = 'Finish' THEN 3 ELSE 4 END ),
	date1 DESC;

有不足,请在评论处提出!!!!!!!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/743048.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号