2010-11-29 2 views
1

이 질문은 이미 유래에 요청 된 다른 곳에서 :HP Quality Center를 사용하여 재귀 SQL 쿼리를 만들 수 있습니까?

  1. Is it possible to make a recursive SQL query ?
  2. Requêtes récursives avec les CTE - Exemples avec SQLServer 2003

하지만 HP 품질-센터 (10)

을에서 보고서 쿼리에 대해이 작업을하고 싶습니다

그러한 전문 지식에 대한 통찰력을 가진 사람이 있습니까?


간단한 검사 :

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

"는 잘못된 진술을 포함하고 있기 때문에 품질 센터 쿼리를 실행할 수 없습니다."

다음과 같은 의도적 인 오타 반면

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

QC는 SQL 쿼리 ... 다음 오류와 함께 실행하는 데 실패했습니다 "보고 : 실패 SQL ... [머큐리] [오라클 JDBC 드라이버] [ Oracle] ORA-00933 : SQL 명령이 제대로 종료되지 않았습니다. "

그래서 나는이 두 가지 질문에 대답 같아요

  1. 서버가 오라클입니다
+1

QC 뒤에있는 DBMS는 –

+0

입니다. 지금 당장은 알지 못합니다. 하지만 DB에 직접 액세스하기 전에 기본 제공 쿼리 메커니즘을 일반 사용자 (QC 웹 인터페이스에서 제공하는 대시 보드 모듈에서)로 사용하고 싶습니다. 이렇게하면 DB로부터 나를 격리시킬 수 있으며 특별한 액세스 나 권한 없이도 다른 사용자와 쿼리를 공유 할 수 있습니다. – asoundmove

+1

재귀 CTE의 사용이 모든 DBMS (또는 버전)에서 지원되지 않기 때문에 나는 묻고 있었다. PostgreSQL은 버전 8.4, SQL Server 2005 및 Oracle 11gR2 (그러나 CONNECT BY를 Oracle과 함께 사용할 수 있음)와 MySQL을 전혀 지원하지 않습니다. 따라서 실제 오류 메시지를 표시해야합니다. 그렇다면 이것이 QC 문제인지 데이터베이스 문제인지 분명히 알 수 있습니다. –

답변

1

좋아 품질 관리 인터페이스를 통해 사용할 수 없습니다와

  • (이 버전을 제공하지 않습니다하지만), 가지고있어 :

    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에게 감사의 말을 전하여 깊은 검색을 유도했습니다.

    Fab.

    나는 다음과 같은 거래의 개선이나 추가 트립 및 트릭에 대해 의견을 제시하고 있습니다. SYS_CONNECT_BY_PATH와 같은 CONNECT BY 관련 기능에 대한 참조는 어디에서 찾을 수 있습니까? 나는 그것에 대해 배워야 할 몇 명의 친구가 있다고 확신한다.

  • +0

    예 : http://psoug.org/reference/connectby.html – asoundmove