Est-il possible de faire une requête SQL récursif - avec HP Quality Center?
-
29-09-2019 - |
Question
Cette question a déjà été posée dans stackoverflow et ailleurs:
- Est-il possible de faire une requête SQL récursif?
- récursives Avec les Requêtes CTE - SQLServer 2003 with Exemples
Mais je voudrais faire ce travail pour une requête de rapport qualité-Center HP 10.
Toute personne ayant un aperçu de ces aspects techniques?
Une simple vérification:
with t1 (parent, child) as
(select * from all_lists t where t.al_father_id = '2') select * from t1
QC rapports « Quality Center ne peut pas exécuter la requête parce qu'elle contient des déclarations non valides ».
Alors que la faute de frappe intentionnelle suivante
select * from all_lists t wher t.al_father_id = '2'
QC rapports "La requête SQL ... n'a pas réussi à exécuter, avec l'erreur suivante: Échec de SQL ... [Mercury] [Oracle JDBC Driver] [Oracle] ORA-00933:. Commande SQL pas correctement terminé"
Je suppose que cela répond à deux questions:
- le serveur est Oracle (bien qu'il ne donne pas la version)
- avec ne sont pas autorisés par l'interface QC
La solution
Ok, il a obtenu:
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
Ceci est la solution à ma question. Merci à a_horse_with_a_name des commentaires qui m'a motivé à la recherche plus profonde.
Fab.
Je suis toujours ouvert aux commentaires pour l'amélioration ou d'autres voyages et trucs du métier - tels que: où puis-je trouver une référence pour le CONNECT par des fonctions connexes comme SYS_CONNECT_BY_PATH. Je suis sûr qu'il a quelques amis que je serais désireux d'apprendre.