我使用下面的 ORDER BY 函数按客户 ID 订购一个简单的查询(它最初是派对年龄,但似乎不起作用,所以我更改了它以查看它是否是语法) .
SELECT customer_id, customer_name, party_age
FROM customer
ORDER BY customer_id
报告没有返回错误,但是当我去查看报告时,它根本没有排序。我也尝试过使用数字(ORDER BY x)。
有人指引我正确的方向吗?
编辑:Customer_id 是 VARCHAR2(3),有 10 个样本数据字段,范围从 001 到 010。我尝试按照下面的建议转换为 int,但结果仍然相同。
最佳答案
Order by
在 Oracle 中工作。问题一定是你得到的结果与你期望的不同。
造成这种情况的一个典型原因是表示为字符串的数字。这会将事物排序为 1, 10, 100, 101, 102 。 . .如果您期望数字排序,这看起来不正确。
我的猜测是以下方法会起作用:
order by cast(customer_id as int)
关于sql - ORDER BY 函数在 Oracle 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13823629/