Можно ли сделать рекурсивный запрос SQL - с центром качества HP?
-
29-09-2019 - |
Вопрос
Этот вопрос уже был задан в Stackoverflow и в других местах:
- Можно ли сделать рекурсивный запрос SQL?
- Requestes Recursives avec les cte - Exemples 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 Driver] [Oracle] ORA-00933: команда SQL не завершена должным образом».
Так что я думаю, это отвечает на два вопроса:
- Сервер Oracle (хотя он не дает версии)
- с не допускается через интерфейс 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. Я уверен, что у него есть несколько друзей, о которых я хотел бы узнать.