有什么方法可以在 Presto 中显示模式中的所有列和表?

Is there any way to display all columns and tables in a schema in Presto?

我一直在努力寻找 Presto 架构中的 table 和列,如下面的经典 PL/SQL:"select column_name, table_name from all_tab_columns?" 在 presto doc 中没有发现任何指向此的内容。 您可以在架构中显示 columns in a table and tables in a schema 但不是所有 table 及其各自的列。 一个用例是查找包含所需列名称的 table,如: "select column_name, table_name from all_tab_columns where column_name like '%something_potentially_useful%'" 正在回答如何在 information_schema 中查看所有 table 和模式,但不幸的是 information_schema 不包含 column_name 作为描述符。

先谢谢你!

information_schema.columns 包含所有可用信息:

SELECT * FROM <catalog>.information_schema.columns

从 Presto 327 开始,information_schema.columns table 有以下列:

presto:default> DESCRIBE tpch.information_schema.columns;
      Column      |  Type   | Extra | Comment
------------------+---------+-------+---------
 table_catalog    | varchar |       |
 table_schema     | varchar |       |
 table_name       | varchar |       |
 column_name      | varchar |       |
 ordinal_position | bigint  |       |
 column_default   | varchar |       |
 is_nullable      | varchar |       |
 data_type        | varchar |       |
 comment          | varchar |       |
 extra_info       | varchar |       |
(10 rows)