当前位置:   article > 正文

PostgreSQL判断表的某个字段是否存在索引_pgsql 判断索引是否存在

pgsql 判断索引是否存在

-- 函数: gis_index_exists

-- 功能: 某个字段上是否存在索引

-- 参数:

-- schemaname

-- tablename

-- columnname

-- 返回:

-- true 索引存在

-- false 无索引

CREATEOR REPLACE FUNCTION gis_index_exists(schemaname varchar, tablename varchar, columnname varchar) returnsBOOLEANas $$

select

count(1) = 1

from

pg_class t,

pg_class i,

pg_index ix,

pg_attribute a,

pg_namespace n

where

t.oid = ix.indrelid

and i.oid = ix.indexrelid

and a.attrelid = t.oid

and a.attnum = ANY(ix.indkey)

and t.relkind = 'r'

and n.nspname = $1

and t.relname = $2

and a.attname = $3

;

$$ LANGUAGE'sql';

-- 函数: gis_index_exists

-- 功能: 某个字段是否存在索引

-- 参数:

-- tablename

-- columnname

-- 返回:

-- true 索引存在

-- false 无索引

CREATEOR REPLACE FUNCTION gis_index_exists(tablename varchar, columnname varchar) returnsBOOLEANas $$

select gis_index_exists('public',$1,$2);

$$ LANGUAGE'sql';

-- 用法

select gis_index_exists('public','tablename','columnname') ;

select gis_index_exists('tablename','columnname') ;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小舞很执着/article/detail/938585
推荐阅读
相关标签
  

闽ICP备14008679号