Postgresql 带缩进的查询输出

Postgresql 带缩进的查询输出,postgresql,Postgresql,我有桌子系统 component | subcomponent (foreign key with subsystem table) ----------+------------- cpu | 1 monitor | lcd | keybord | mouse | 组件|子组件(带子系统表的外键) ----------+------------- cpu | 1 监视器| 液晶显示器| 凯博尔德| 老鼠| 子成分表 id | name ----+-

我有桌子系统

component | subcomponent (foreign key with subsystem table) ----------+------------- cpu | 1 monitor | lcd | keybord | mouse | 组件|子组件(带子系统表的外键) ----------+------------- cpu | 1 监视器| 液晶显示器| 凯博尔德| 老鼠| 子成分表

id | name ----+------------- 1 | motherboard 1 | harddisk 1 | cdrom id |名称 ----+------------- 1 |主板 1 |硬盘 1 | cdrom 现在我想要缩进打印

期望输出

cpu --motherboar --harddisk --cdrom keyboard mouse lcd 中央处理器 --母猪 --硬盘 --光盘 键盘 老鼠 液晶显示器
如何可能?

可以使用左连接和一些字符串格式功能:

select ... as parent, '  -- ' || coalesce(..., '') as child
from ... left join ... on ...
你也可以把东西联合起来,等等,以得到你想要的东西


但是正如前面所建议的,您确实应该让视图来处理这些问题。

您应该让视图来处理数据可视化。换句话说,您不应该让查询解决该问题。