因此,我尝试对包含如下数据的字段进行排序:
"Order Number"
1-123456
1-223456
1-33356
order by "Order Number" desc
目的是将订单号从最新到最旧排序。每个订单号都以1-开头,而不是2-或3-等......但问题是在上面的例子中它显示1-33356是最新的。但是,如果您可以通过1-删除并且正在谈论价值来描绘订单号,则33,356< 123456。如何根据1 - ????
之后的数字总值对其进行排序提前感谢您的帮助。我喜欢这个网站!
答案 0 :(得分:1)
问题是你想要一个字符串内容的数字顺序(将按字典顺序排序)。
你应该提取字符串的数字部分并将其转换为要订购的数字。 像这样的东西
select * from yourtable
order by to_number(substring(ordernumber, 3));