【发布时间】:2018-10-23 02:17:00
【问题描述】:
我正在处理 PostgreSQL 中的现有表,该表在同一个表中具有子行和父行。我不是数据库专家,因此很难编写返回子行平均值并将其与父行一起显示的查询。
我创建了函数,但查询需要更长的时间来执行,所以我需要在不使用函数的情况下编写查询。编写此查询以使其运行更快的最佳方法是什么?
请看下图了解我的表格
我当前的查询
SELECT task_id, tak_or_project_name,
case when c.parent_id = 0 Then getProjectScore(task_id, 'score1') ELSE score1 end as score1,
case when c.parent_id = 0 Then getProjectScore(task_id, 'score2') ELSE score2 end as score2,
case when c.parent_id = 0 Then getProjectScore(task_id, 'score3') ELSE score3 end as score3
FROM tbl_task c
【问题讨论】:
-
数据的顺序对您来说重要吗?
-
此处展示表格数据时,请尽量减少图片本身的文字材料。两个表格之间的段落应以文本形式呈现;这是因为图像中的文本与剪贴板、搜索引擎和屏幕阅读器不兼容,因此志愿者更难提供帮助。
标签: sql postgresql