reportportal v5 の postgresql データベースに対して sql を書き込もうとしていますが、project_id [および拡張子 project_name] を test_item と同じ行に取得する明確な方法がないことがわかりました。
私は最初にこのクエリを書きました
select
tir.result_id,
ti.start_time,
tir.end_time,
tir.duration,
ti.item_id as test_item_id,
cq.issue_name,
STRING_AGG(l.log_message, '\t') as log_message
from test_item_results tir
left join test_item ti
on tir.result_id = ti.item_id
left join issue i
on tir.result_id = i.issue_id
join (select "name", project_type, issue_type_id, issue_group_id, issue_name from project p
join issue_type_project itp
on p.id = itp.project_id
join issue_type it
on itp.issue_type_id = it.id
where project_type = 'INTERNAL') cq
on i.issue_type = cq.issue_type_id
left join log l
on tir.result_id = l.item_id
where tir.status = 'FAILED'
and type IN ('STEP')
and cq.issue_name <> 'To Investigate'
and cq.issue_name in ('Product Bug', 'Automation Bug', 'System Issue', 'No Defect')
and l.log_message is not NULL
group by tir.result_id, ti.start_time, tir.end_time, ti.item_id, tir.result_id, i.issue_id, cq.issue_name
order by ti.start_time desc
ただし、すべてのプロジェクト (個人または内部) で、製品のバグ、自動化のバグ、システムの問題、および欠陥なしという既定の障害タイプを使用できます。このクエリは同じ test_item につながり、その結果はすべてのプロジェクトで複製されます。
次に、db ダイアグラムを見て、これらの空のテンプレート テーブルがあることに気付きました:pattern_template_test_item
とpattern_template
. これらの使用方法を理解することに成功していません。project
テーブルには と との関係があることpattern_template
がわかります。pattern_template
pattern_template_test_item
test_item
このSQLの書き方の手がかりを持っている人はいますか? 私の最終目標は、重複することなくクエリから表示される出力を取得することです。また、テストと結果が属する実際のプロジェクトが必要なため、ここでは distinct を使用できません。