oracle怎么排序不准啊?求高手解答

strSQLL:='INSERTINTONIU(QID,IDE,ZH,GAO,DI,IG)SELECT*FROMNIIORDERBYQIDASC,ZHASC';execu... strSQLL:='INSERT INTO NIU(QID,IDE,ZH,GAO,DI,IG) SELECT * FROM NII ORDER BY QID ASC,ZH ASC';
execute immediate strSQLL;
以上是在SQL Developer里写的代码,表NIU和表NII字段名字和数量都是一样的,我想做的就是讲NII表里的记录数按照QID升序,QID值相同的情况下将ZH升序,按照这个排序规则将数据再写入NIU中,但是我最后查询的时候发现不准,我表中有几百万个数据,字段QID和ZH值都不是唯一的,我发现前面的排序都准确,但是当到几万条数据之后就开始乱了,有时候QID值大的反而在前面,求高手解答。
展开
 我来答
百度网友b39399b
2013-05-10 · TA获得超过184个赞
知道小有建树答主
回答量:334
采纳率:100%
帮助的人:165万
展开全部
数字和字符大小的比较规则是不一样的,确定这两个字段的类型,我很纳闷,你这种排序后插入有意义么?只要对新表查询时随便对一个字段排序查询你这种排序顺序不就打乱了?
追问
QID和ZH的格式都是NUMBER型
追答
order by QID,ZH;试试
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友785d2af
2013-05-10 · TA获得超过258个赞
知道小有建树答主
回答量:333
采纳率:0%
帮助的人:185万
展开全部
如果QID是字符格式就会发生值大的在前面,比如10000在11前面,从左往右一个个字符对比排列的,SELECT时用转成数字格式再排序就行了
追问
QID和ZH的格式都是NUMBER型
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hezhenxun
2013-05-10
知道答主
回答量:27
采纳率:0%
帮助的人:4万
展开全部
学习中。。。。。。。。。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lin67152
2013-05-10 · TA获得超过310个赞
知道小有建树答主
回答量:122
采纳率:100%
帮助的人:36.3万
展开全部
QID和ZH字段的类型是什么
追问
QID和ZH的格式都是NUMBER型
追答
有错误截图吗,发一个上来看看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式