我想在PostgreSQL中从regclass
获取Tablename。我找到了一个解决方法,但我对此并不满意:
SELECT split_part('datastore.inline'::regclass::TEXT, '.', 2);
是否有专门的函数从Postgre中的regclass中提取表名?
答案 0 :(得分:3)
您可以查询pg_class:
select relname
from pg_class
where oid = 'datastore.inline'::regclass;
没有内置功能,但您可以创建自己的功能:
create or replace function get_relname(regclass)
returns name language sql as $$
select relname
from pg_class
where oid = $1
$$;
select get_relname('datastore.inline'::regclass);