这个问题已经在Stackoverflow和其他地方提出:

  1. 是否可以进行递归SQL查询?
  2. recredtesrécursivesavec les cte-榜样AVEC SQLSERVER 2003

但是我想为HP质量中心10中的报告查询做这项工作。

有人对这种技术有洞察力吗?


一个简单的检查:

with t1 (parent, child) as 
(select * from all_lists t where t.al_father_id = '2') select * from t1

QC报告“质量中心无法运行查询,因为它包含无效的语句”。

而有以下故意错别字

select * from all_lists t wher t.al_father_id = '2'

QC报告“ SQL查询...未能运行,存在以下错误:失败的SQL ... [Mercury] [Oracle JDBC驱动程序] [Oracle] ORA-00933:SQL命令未正确结束。”

所以我想它回答了两个问题:

  1. 服务器是甲骨文(尽管它没有给出版本)
  2. 通过QC接口不允许使用
有帮助吗?

解决方案

好的,我知道了:

select      SYS_CONNECT_BY_PATH (al_description,' :: ')
from        all_lists
start with  al_father_id = '2'
connect by  prior al_item_id = al_father_id

这是我查询的解决方案。感谢A_HORSE_WITH_A_NAME的评论,激励我更深入地搜索。

工厂。

我仍然对改进或进一步旅行和交易技巧的评论开放 - 例如:在哪里可以找到由SYS_CONNECT_BY_PATH等相关函数进行连接的参考。我敢肯定,它有一些我很想学习的朋友。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top