在我的表中,我的列之一具有如下值
Y-1 Y-2 Y-3 Y-4 Y-5 Y-6 Y-7 Y-8 Y-9 Y-10 Y-11 Y-12 Y-13 Y-14
当我通过这个专栏订购它的工作正常,如果该行的值高达Y-9其他明智的我的结果是错误的如下.
Y-1 Y-10 Y-11 Y-12 Y-13 Y-14 Y-2 Y-3 Y-4 Y-5 Y-6 Y-7 Y-8 Y-9
但我想要输出如下
Y-1 Y-2 Y-3 Y-4 Y-5 Y-6 Y-7 Y-8 Y-9 Y-10 Y-11 Y-12 Y-13 Y-14
如何实现上述结果.我正在使用oracle数据库.任何帮助将不胜感激!!!!!
解决方法
您可以通过操纵列内容并转换为数字来使用订单,例如:
order by substr(col1,1,2),TO_NUMBER(sustr(col1,3,10))