WITH SORT_ORDER AS ( SELECT '工资' as XMMC, 1 as SORT_NUM UNION ALL SELECT '社会保险费', 2 UNION ALL SELECT '折旧费', 3 UNION ALL SELECT '租赁费', 4 UNION ALL SELECT '大中修', 5 UNION ALL SELECT '租赁费摊销', 6 UNION ALL SELECT '物料消耗', 7 UNION ALL SELECT '修理费', 8 UNION ALL SELECT '安全整改支出', 9 UNION ALL SELECT '技改费用', 10 UNION ALL SELECT '环保治理费用', 11 UNION ALL SELECT '间接制造费', 12 UNION ALL SELECT '水电费', 13 UNION ALL SELECT '招待费', 14 UNION ALL SELECT '代理咨询费', 15 UNION ALL SELECT '职工福利费', 16 UNION ALL SELECT '运输费', 17 UNION ALL SELECT '劳动保护费', 18)-- 主查询SELECT a.* FROM CBDA_CBXM aLEFT JOIN SORT_ORDER b ON a.XMMC = b.XMMCWHERE a.XMLX IN ('3','4')ORDER BY COALESCE(b.SORT_NUM, 100); 可以尝试使用这段代码,根据实际情况可改写