好贷网好贷款

一条SQL语句,大家帮帮忙 100yangfuen637200]

发布时间:2016-12-3 12:42:01 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"一条SQL语句,大家帮帮忙 100yangfuen637200]",主要涉及到一条SQL语句,大家帮帮忙 100yangfuen637200]方面的内容,对于一条SQL语句,大家帮帮忙 100yangfuen637200]感兴趣的同学可以参考一下。

create table NODE (   NODECODE   CHAR(8) not null,   NODENAME   VARCHAR(100) not null,   NODEWITH   CHAR(8)  ) /* NODE 是网点表:NODECODE网点编号,VARCHAR网点名,NODEWITH 属于那个网点 */ insert into node select '00000000','总部',null union all select '00000001','广东分公司','00000000' union all select '00000002','四川分分公司','00000000' union all select '00000005','云南分分公司','00000000' union all select '00000003','广州办事处','00000001' union all select '00000004','成都办事处','00000002' union all select '00000006','昆明办事处','00000005' create table USERORDER (   NODECODE CHAR(8),   USERCODE CHAR(8),   DEALRATE INTEGER ) /* USERORDER 订单审核人表:NODECODE网点编号,USERCODE用户编号,DEALRATE 等级 */ insert into USERORDER select '00000000','A1',1 union all select '00000001','B1',1 union all select '00000001','B2',2 union all select '00000002','C1',1 union all select '00000002','C2',2 union all select '00000003','D1',1 union all select '00000004','D2',1 union all select '00000006','F1',1 /* 我要的结果是订单审核的几种线路 比如:广东分公司的订单是让   D1  B1 B2  A1  按顺序审(B1 B2同一级,B2等级数据高一点,所以B1在B2前)       云南公公司在分公司时没有人,所以就只有总部与办事处审核       结果是: D1    B1    B2     A1         D2    C2    C1     A1         F1                 A1 */ drop table node drop table USERORDER 我不知道我说清楚没,先谢谢大家了,对了我的数据库是ORACLE9I的,只是我觉得这里要活跃点我就来这里问了,所以尽量少用点SQL Server独有的函数

楼主还是到ORACLE版问问。

ORACLE 幫頂~~~

SQL也会是一样的问题,帮顶

oracle可以直接做递归,比如 select t.*,nodename||'>'||prior nodename as path from node t start with nodecode='00000000' connect by  nodewith = prior nodecode; /* NODECODE NODENAME NODEWITH PATH 00000000 总部 总部> 00000001 广东分公司 00000000 广东分公司>总部 00000003 广州办事处 00000001 广州办事处>广东分公司 00000002 四川分分公司 00000000 四川分分公司>总部 00000004 成都办事处 00000002 成都办事处>四川分分公司 00000005 云南分分公司 00000000 云南分分公司>总部 00000006 昆明办事处 00000005 昆明办事处>云南分分公司 */

建议楼主把要求说详细点。 比如:原始数据是什么样的。根据什么要求变化。       结果要求是什么样的。 在SQL版提问一般都这样。

oracle,帮顶!

你们就当是SQL Server,SQL Server里是怎么写啊,上面数据我给出来了的,你们看看我那里还没有说清楚的

引用 6 楼 ai_li7758521 的回复:oracle,帮顶!。

感觉说的不大清楚,帮顶

引用 9 楼 GRANDTREE 的回复:感觉说的不大清楚,帮顶 你那里不明白,我在说啊

幫頂吧

sorry,理解不了结果是什么意思

引用 4 楼 jinjazz 的回复:oracle可以直接做递归,比如  SQL codeselect t.*,nodename||'>'||prior nodename as path from node t start with nodecode='00000000' connect by  nodewith = prior nodecode; /* NODECODE    NODENAME    NODEWITH    PATH 00000000    总部        总部> 00000001    广东分公司    00000000    广东分公司>总部 00000003    广州办事处    00000001    广州办事处>广东分公司 00000002    四川分分公司    00… 4樓正解 Oracle 不熟,不過現在SQL2005 好像也可以遞歸了。。。

 Note 表用2次,使用左连接就可以出来了。

没有我要的结果,谢谢各位了!

上一篇:国产数据库最新进展 20oursql]
下一篇:急急!!多表连接怎么过滤重复的记录?8个表 20talo520520]

相关文章

相关评论