引用视图SQL / Postgres时获取默认列值

时间:2014-08-11 23:05:12

标签: sql postgresql sql-view

如果我只能引用一个由多个表组成的视图,那么如何获取列的默认值?相反,它甚至可行吗?

暂时忽略权限。如何直接从表中获取列的默认值here,但这是不够的,因为如果我在视图中查询列的默认值,它将合理地返回/ null。

1 个答案:

答案 0 :(得分:0)

首先,您需要找出列来自哪个表。您可以查询系统目录

SELECT definition
FROM   pg_views
WHERE  viewname = 'my_view'
AND    schemaname = 'public';

或者使用

获取 psql 中的视图定义
\d+ my_view

或者只需在 pgAdmin 中的对象浏览器中查找 然后你可以使用你已经找到的技术从那里开始:

或者,要获得实际的,而不仅仅是计算它的表达式: