[PostgreSQL] 如何用一条SQL语句展示某个 table 的 schema?

问题描述

有时候我们需要接手现有的 PostgreSQL 项目,需要从数据库表结构开始入手,那么有没有一条SQL语句可以展示出某个 table 的所有字段名以及字段类型呢?

问题出现的环境背景及自己尝试过哪些方法

如果可以访问 psql 命令行,可以使用 \d table_name 来获得想要的信息。但是很多时候,我们只能使用 SQL 语句。

相关代码

比如有一个 table 名字是 transactions,我想查询出这个表的所有字段。

你期待的结果是什么?实际看到的错误信息又是什么?

一条能够显示出某个 table 所有字段名和字段类型的 SQL 语句。

本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
阅读 2.2k
1 个回答
SELECT 
   table_name, 
   column_name, 
   data_type 
FROM 
   information_schema.columns
WHERE 
   table_name = 'transactions';

在 PostgreSQL 里内置的表 information_schema.columns 里保存了很多关于所有table 列的信息。

本文参与了SegmentFault 思否面试闯关挑战赛,欢迎正在阅读的你也加入。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题