社区
基础和管理
帖子详情
oracle排序问题--如何按asc顺序排序
snowdesert
2005-01-06 09:01:00
比如查询结果:
batch_no
-------------
ph888
ph333
ph1000
-------------
该字段为varchar2类型,oracle排序时按拼音序排的,就是以上所示顺序;
但我想要的结果是:
ph333
ph888
ph1000
即按asc顺序排,怎么实现呢
...全文
844
13
打赏
收藏
oracle排序问题--如何按asc顺序排序
比如查询结果: batch_no ------------- ph888 ph333 ph1000 ------------- 该字段为varchar2类型,oracle排序时按拼音序排的,就是以上所示顺序; 但我想要的结果是: ph333 ph888 ph1000 即按asc顺序排,怎么实现呢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
GerryYang
2005-01-06
打赏
举报
回复
order by ... asc [desc]
liuyi8903
2005-01-06
打赏
举报
回复
SQL> select * from test
2 ;
AA
--------------------
ph333
ph1000
ph888
SQL>
SQL> Select To_Number(Substr(Aa, 3, Length(Aa) ))
2 From Test
3 Order By To_Number(Substr(Aa, 3, Length(Aa) )) Asc
4 ;
TO_NUMBER(SUBSTR(AA,3,LENGTH(A
------------------------------
333
888
1000
SQL>
liuyi8903
2005-01-06
打赏
举报
回复
SQL> select * from test
2 ;
AA
--------------------
ph333
ph1000
ph888
SQL>
SQL> Select To_Number(Substr(Aa, 3, Length(Aa) ))
2 From Test
3 Order By To_Number(Substr(Aa, 3, Length(Aa) )) Asc
4 ;
TO_NUMBER(SUBSTR(AA,3,LENGTH(A
------------------------------
333
888
1000
SQL>
yxxx
2005-01-06
打赏
举报
回复
是对的,呵呵
我用自己的表调试时,出现了小的失误-_-#
ORARichard
2005-01-06
打赏
举报
回复
SQL> ed
已写入文件 afiedt.buf
1 create table tb as select 'ph888' batch_no from dual union
2 select 'ph333' from dual union
3* select 'ph1000' from dual
4 /
表已创建。
SQL> select * from tb;
BATCH_
------
ph1000
ph333
ph888
SQL> select * from tb order by to_number(replace(batch_no,'ph'));
BATCH_
------
ph333
ph888
ph1000
小孬,怎么有错?
yxxx
2005-01-06
打赏
举报
回复
我为什么是按这样的顺序排:
ph1000
ph333
ph888
另外,order by to_number(replace(batch_no,'ph'))有问题吧,
报错啊
fuxia
2005-01-06
打赏
举报
回复
order by to_number(batch_no)
ORARichard
2005-01-06
打赏
举报
回复
order by to_number(replace(batch_no,'ph'))
snowdesert
2005-01-06
打赏
举报
回复
即便只有 333,888,1000,oracle依然是按拼音序排的啊
ORARichard
2005-01-06
打赏
举报
回复
order by replace(batch_no,'ph')
snowdesert
2005-01-06
打赏
举报
回复
感谢所有参与者,尤其感谢ORARichard(没钱的日子......) ,结贴
ORARichard
2005-01-06
打赏
举报
回复
ph1000
ph333
ph888
这种就是字符序啊,不是什么汉语序
你到底要什么样的结果。把你要遵循的同种规范用数据例举出来。
snowdesert
2005-01-06
打赏
举报
回复
那个“ph”只是举例子,实际中格式可能不同:
也许是ah333,.....
也许是330088-2,......
但每次排序时的记录格式必遵循同种规范,
问如何才能按字符序排序,而不是按汉语序
Oracle
-----查询
排序
(order by)
文章目录1、目标2、具体内容2.1order by2.1.1按照工资由高到底
排序
,此时应该使用的是一个降序
排序
2.1.2按照雇佣日期从早到晚
排序
2.1.3按照工资由高到底,如果工资相同,则按照雇佣日期由早到晚
排序
2.1.4查询出所有...
oracle
数据库中的
排序
设置
orale中的
排序
最基本的order by desc或
asc
大家应该都比较熟悉,那么其他的
排序
方式,比如中文的按拼音
排序
,按笔画
排序
,或者想自定义
排序
都有什么方法呢,下面介绍
oracle
数据库中
排序
的几种方式。 1.简单的升序、...
oracle
查询结果的
排序
,
ASC
/DESC,升序,降序,多列
排序
,ORDER BY
oracle
查询结果的
排序
,
ASC
/DESC,升序,降序,多列
排序
,ORDER BY
oracle
查询结果的
排序
,
ASC
/DESC,升序,降序,多列
排序
,ORDER BY,一些练习题 关键字:
oracle
查询 结果
排序
asc
desc 升序降序 多列 order by...
oracle
按序号
排序
,
Oracle
排序
以及序号的输出
Oracle
排序
以及序号的输出在一般Select语句中我们通过Orderby ...
Asc
/Desc来进行
排序
。但是这种
排序
方式在输出时,不包含
排序
后的序号信息。现在介绍一下
Oracle
中可以用于
排序
输出的方法。1. RANK ( ) OVER ( [query...
ORACLE
---
排序
查询
ORACLE
—
排序
查询 语法: SELECT COL_LIST FROM TB_NAME ORDER BY ODR_CONDITION [
ASC
|DESC]; 语法解释: 对于从TB_NAME中查出的COL_LIST数据按照规则ODR_CONDITION进行
排序
查询员工姓名、岗位及薪资,并将查询结果...
基础和管理
17,377
社区成员
95,128
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章