【发布时间】:2020-10-23 12:27:02
【问题描述】:
在使用CASE时,是否可以在由多个订单驱动的Oracle SQL中执行sn ORDER BY?
例如:
+------------------+
| Code | DateTime |
+------------------+
| ABC | 7-01-2020 |
+------------------+
| DSF | 7-01-2020 |
+------------------+
| ABC | 6-01-2020 |
+------------------+
我想在Code 是ABC 的地方订购它,然后按行的DateTime 订购它。
为什么我不能这样做?
SELECT * FROM TABLE
ORDER BY
CASE
WHEN CODE = 'ABC' THEN '001'
ELSE 'ZZZ'
END
AND DATETIME ASC;
我只能使用CASE 语句,而不能在ORDER BY 子句中使用其他任何内容。如果我删除AND DATETIME ASC;,查询将完成,仅按CODE 排序,其中代码ABC 是第一个。
【问题讨论】:
标签: sql oracle select sql-order-by