我希望能够从所选模式中选择表格并获得所需结果,如下所示。
请注意,有些列没有描述(列注释)。
目前我只有这个查询可以为我提供良好的结果,但仅适用于已经被注释的列(对于选择的表中没有注释的列,在输出中不会显示)。
以下是仅返回具有注释的列数据的查询。
如何在结果中获取没有注释的列?
column_name | data_type | description
-----------------------------------------
id | integer | id of bill
name | character |
address | character | adress of buyer
请注意,有些列没有描述(列注释)。
目前我只有这个查询可以为我提供良好的结果,但仅适用于已经被注释的列(对于选择的表中没有注释的列,在输出中不会显示)。
以下是仅返回具有注释的列数据的查询。
SELECT c.column_name, c.data_type, pgd.description
from pg_catalog.pg_statio_all_tables as st
inner join pg_catalog.pg_description pgd on (pgd.objoid=st.relid)
inner join information_schema.columns c on (pgd.objsubid=c.ordinal_position and c.table_schema=st.schemaname and c.table_name=st.relname)
where table_schema = 'public' and table_name = 'some_table';
如何在结果中获取没有注释的列?
LEFT JOIN
。INNER JOIN
给出两个表的交集。如果从表 A 中的某一行到表 B 没有关系,则该行不会包含在输出中。 - KarelG