BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / database / #4673同步于 2010/7/28
Database机器人发帖

【求助】将数据库返回的结果插入新表的顺序问题

littlewhite
2010/7/28镜像同步0 回复
A ============================================== select * from Extract2 --就是限制条件 where is_valid=0 /*有效点的条件*/ AND has_next=1 AND Timing_Advance between 0 AND 63 --然后按如下关建字排序 ORDER BY CGI asc, TRX asc, time_slot asc,result_num asc =========================================== 得到一个返回结果。。。 然后我用同样的语句,不过是将返回的查询结果放入了一个新表,语句如下 B ================================================ --复制旧表的表头 select * into ValidData from Extract2 where 1=0 --从旧表中复制排过序的数据 insert into ValidData select * from Extract2 where is_valid=0 /*有效点的条件*/ AND has_next=1 AND Timing_Advance between 0 AND 63 ORDER BY CGI asc, TRX asc, time_slot asc,result_num asc =================================================== 但是感觉前后两个返回的结果顺序不一样了,举个列子 A中返回的数据第1-60行,result_num从 139-198) ==================== CGI TRX time_slot result_num 460-1-7131-42121 0 3 139 460-1-7131-42121 0 3 140 460-1-7131-42121 0 3 141 460-1-7131-42121 0 3 142 460-1-7131-42121 0 3 143 ..................................... 460-1-7131-42121 0 3 198 ----------------------------------------------------------------------------------- 而B中得到数据却将这一组数分成了两部分 先是在1-39行 CGI TRX time_slot result_num 460-1-7131-42121 0 3 139 460-1-7131-42121 0 3 140 ......................................... 460-1-7131-42121 0 3 177 而后是在148585行重新出现,在148585-148605行补全了后半部分 CGI TRX time_slot result_num 460-1-7131-42121 0 3 178 460-1-7131-42121 0 3 179 ......................................... 460-1-7131-42121 0 3 198 ===================================================== 如果咋眼看,B返回的数据还是按照规定的顺序排序的,我偶然发现了有些数据顺序的不同 这个很奇怪,是数据库本身有些排序规则,还是我语句出错了,不是刷新的问题,我把表删了好几次,清空好几次,反正执行这个语句都是这样的结果,如何才能将A返回的结果按照原来的顺序插入新表中呢?求指教
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。