难题啊难题 按id_pre排序啊,这有用吗?!无聊啊! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 id_pre排序?有这么简单嘛???比如有序的四条记录:a<->f<->b<->c存在表中就是:id_pre id id_nextnull a fa f bf b cb c null没错,按id_pre或id_next都可以排,关键是你怎么排?用order ?显然不行!!!总不能一条条记录地SELECT吧,效率也太低了 用order为什么不行!如果保证id_pre和id_next都是有效的话!只要按order by ip_pre就可以了! 看:http://www.csdn.net/expert/topic/154/154561.shtm 你没看到我的例子嘛id_pre分别为null,a,f,b你怎么order啊? In Oracle.table_test:ID ID_PRE ID_NEXT---------- ---------- ----------01 0202 01 0305 04 0603 02 0404 03 05>>SQL> SELECT id_pre,id,id_next 2 FROM table_test 3 START WITH id = '01' 4 CONNECT BY PRIOR id_next = id;ID_PRE ID ID_NEXT---------- ---------- ---------- 01 0201 02 0302 03 0403 04 0504 05 06 omHan(小马哥),感谢你的帮助,还想请教一下你的SQL语能通用吗?换不同的DBMS行不行,我只是SQL的初学者 这个题目有点意思,不过能用select语句实现,应该用存储过程,好好想想吧! 有没有考虑已对多的情况,即一个父对应多个子?所以不可能用一条SELECT语句完成,明天把代码给你! 你用的是啥数据库?这句话在SQL中就通不过。可惜我手上没有SQL92。 该语句是方言。SQL Server只好用游标、临时表,逐行填prior,next。或者另加一个字段,在增删改的时候维护它,记录每行在序列中的位置,select时按此字段排序。总之是个病态的表结构。 kock(荷赫) 什麽病态的表结构!老兄!!!这是一个标准的分极查询。 现在用啥数据库都没定下,所以想搞一个通用的。ericzou(eric)说得没错,还没考虑一父多子呢,我想那更难了。 leo2u(财源广进) 在oracle中一父多子也可以实现。而且显示也可以用tree view 形式显示。如果你的数据库还没定,你就选oracle吧. 呵呵,谢谢TomHan(小马哥)的建议,ORACLE好是好,可选哪个数据库不是由我来决定啊,要想使代码不依赖于具体的DBMS,看来不容易实现了 不同操作系统,远程链接服务器,能进行操作吗? 怎么在数据库中插入多条数据? 关于left join 事务处理问题? 问一个业务如何设计表的问题 表与表之间关系的设置 SQL 中的<br/>_高分 如何找出为<null>的记录 高手请进!如何在2个SQL数据库之间进行数据查询和更新! 怎样实现这样的sql查询? 本地机器连接SQL2000的问题 紧急求救:关于sql server7.0 的触发子的问题。
比如有序的四条记录:a<->f<->b<->c
存在表中就是:
id_pre id id_nextnull a f
a f b
f b c
b c null没错,按id_pre或id_next都可以排,关键是你怎么排?用order ?显然不行!!!
总不能一条条记录地SELECT吧,效率也太低了
如果保证id_pre和id_next都是有效的话!
只要按order by ip_pre就可以了!
id_pre分别为null,a,f,b
你怎么order啊?
ID ID_PRE ID_NEXT
---------- ---------- ----------
01 02
02 01 03
05 04 06
03 02 04
04 03 05>>SQL> SELECT id_pre,id,id_next
2 FROM table_test
3 START WITH id = '01'
4 CONNECT BY PRIOR id_next = id;ID_PRE ID ID_NEXT
---------- ---------- ----------
01 02
01 02 03
02 03 04
03 04 05
04 05 06
所以不可能用一条SELECT语句完成,明天把代码给你!
你用的是啥数据库?
这句话在SQL中就通不过。可惜我手上没有SQL92。
SQL Server只好用游标、临时表,逐行填prior,next。
或者另加一个字段,在增删改的时候维护它,记录每行在序列中的位置,select时按此字段排序。
总之是个病态的表结构。
什麽病态的表结构!老兄!!!这是一个标准的分极查询。
ericzou(eric)说得没错,还没考虑一父多子呢,我想那更难了。
要想使代码不依赖于具体的DBMS,看来不容易实现了