华为云用户手册

  • gs_get_index_status(schema_name, index_name) 描述:获取所有节点上的索引状态信息,包括索引是否可插入以及索引是否可用,主要用于在线创建索引过程中或者构建失败的情况下,确认索引状态。返回值包括节点名称node_name、索引是否可插入状态indisready、索引是否可以用状态indisvalid,只有当所有节点上索引的indisready和indisvalid状态均为true,且索引状态没有被修改为unusable的情况下,当前索引才可用。 返回类型:text,boolean,boolean 示例: gaussdb=# SELECT * FROM gs_get_index_status('public', 'index1'); node_name | indisready | indisvalid ----------------+------------+----------- datanode1 | t | t datanode2 | t | t coordinator1 | t | t (3 row)
  • pgxc_get_variable_info( ) 描述:获取节点上的变量值,包括nodeName、nextOid、nextXid、oldestXid、xidVacLimit、oldestXidDB、lastExtend CS NLogpage、startExtendCSNLogpage、nextCommitSeqNo、latestCompleteXid,startupMaxXid。 返回类型:set of pg_variable_info 示例: gaussdb=# SELECT pgxc_get_variable_info( ); pgxc_get_variable_info ------------------------------------------------------------------------- (dn_6004_6005_6006,25617,141396349,2073,20000002073,15808,138111,0,127154152,141396348,104433004) (1 row)
  • pg_tablespace_databases(tablespace_oid) 描述:获取在指定的表空间中有对象的数据库OID集合 返回类型:setof oid 备注:pg_tablespace_databases允许检查表空间的状况,返回在该表空间中保存了对象的数据库OID集合。如果这个函数返回数据行,则该表空间就是非空的,因此不能删除。要显示该表空间中的特定对象,用户需要连接pg_tablespace_databases标识的数据库与查询pg_class系统表。
  • pg_typeof(any) 描述:获取任何值的数据类型 返回类型:regtype 备注:pg_typeof返回传递给他的值的数据类型OID。这可能有助于故障排除或动态构造SQL查询。声明此函数返回regtype,这是一个OID别名类型(请参考对象标识符类型);这意味着它是一个为了比较而显示类型名称的OID。 示例: 1 2 3 4 5 6 7 8 9 10 11 gaussdb=# SELECT pg_typeof(33); pg_typeof ----------- integer (1 row) gaussdb=# SELECT typlen FROM pg_type WHERE oid = pg_typeof(33); typlen -------- 4 (1 row)
  • pg_get_viewdef(view_name, pretty_bool) 描述:为视图获取底层的SELECT命令,如果pretty_bool为true,行字段可以包含80列。 返回类型:text 备注:pg_get_viewdef重构出定义视图的SELECT查询。这些函数通常都有两种形式,其中带有pretty_bool参数且参数为true时,是“适合打印”的结果,这种格式更容易读。另一种是缺省的格式,更有可能被将来的不同版本用同样的方法解释。如果是用于转储,那么尽可能避免使用适合打印的格式。给pretty-print参数传递false生成的结果和没有这个参数的变种生成的结果完全一样。
  • pg_get_serial_sequence(tablename, colname) 描述:获取对应表名和列名上的序列。 返回类型:text 示例: gaussdb=# SELECT * FROM pg_get_serial_sequence('t1', 'c1'); pg_get_serial_sequence ------------------------ public.serial (1 row)
  • pg_get_functiondef(func_oid) 描述:获取函数的定义。 返回类型:text 示例: gaussdb=# SELECT * FROM pg_get_functiondef(598); headerlines | definition -------------+---------------------------------------------------- 4 | CREATE OR REPLACE FUNCTION pg_catalog.abbrev(inet)+ | RETURNS text + | LANGUAGE internal + | IMMUTABLE STRICT NOT FENCED NOT SHIPPABLE + | AS $function$inet_abbrev$function$ + | (1 row)
  • format_type(type_oid, typemod) 描述:获取数据类型的SQL名称。 返回类型:text 备注:format_type通过某个数据类型的OID以及可能的修饰词,返回其SQL名称。如果不知道具体的修饰词,则在修饰词的位置传入NULL。修饰词一般只对有长度限制的数据类型有意义。format_type所返回的SQL名称中包含数据类型的长度值,其大小是:实际存储长度len - sizeof(int32),单位字节。原因是数据存储时需要32位的空间来存储用户对数据类型的自定义长度信息,即实际存储长度要比用户定义长度多4个字节。在下例中,format_type返回的SQL名称为“character varying(6)”,6表示varchar类型的长度值是6字节,因此该类型的实际存储长度为10字节。 1 2 3 4 5 gaussdb=# SELECT format_type((SELECT oid FROM pg_type WHERE typname='varchar'), 10); format_type ---------------------- character varying(6) (1 row)
  • pg_get_expr(pg_node_tree, relation_oid, pretty_bool) 描述:反编译表达式的内部形式,假设其中的任何Vars都引用第二个参数指定的关系。 返回类型:text 备注:pg_get_expr反编译一个独立表达式的内部形式,比如一个字段的缺省值。便于检查系统表的内容。如果表达式可能包含关键字,则指定关键字引用相关的OID作为第二个参数;如果没有关键字,用零表示即可。
  • pg_get_indexdef(index_oid) 描述:获取索引的CREATE INDEX命令。 返回类型:text 示例: gaussdb=# SELECT * FROM pg_get_indexdef(16416); pg_get_indexdef ------------------------------------------------------------------------- CREATE INDEX test3_b_idx ON test3 USING btree (b) TABLESPACE pg_default (1 row)
  • pg_get_indexdef(index_oid, dump_schema_only) 描述:获取索引的CREATE INDEX命令,仅用于dump场景。当前版本dump_schema_only参数取值对函数输出结果无影响。 返回类型:text 示例: gaussdb=# SELECT * FROM pg_get_indexdef(16416, true); pg_get_indexdef ------------------------------------------------------------------------- CREATE INDEX test3_b_idx ON test3 USING btree (b) TABLESPACE pg_default (1 row)
  • obj_description(object_oid, catalog_name) 描述:获取一个数据库对象的注释。 返回类型:text 备注:带有两个参数的obj_description返回一个数据库对象的注释,该对象是通过其OID和其所属的系统表名称声明。比如,obj_description(123456,'pg_class')将返回OID为123456的表的注释。只带一个参数的obj_description只要求对象OID。 obj_description不能用于表字段,因为字段没有自己的OID。
  • / 描述:除(除法操作符不会取整)。 示例: 1 2 3 4 5 gaussdb=# SELECT 4/2 AS RESULT; result -------- 2 (1 row) 1 2 3 4 5 gaussdb=# SELECT 4/3 AS RESULT; result ------------------ 1.33333333333333 (1 row)
  • in_range_int1_int2(int1, int1, int2, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int1_int2(1::int1, 1::int1, 1::int2, true, true); in_range_int1_int2 -------------------- f (1 row)
  • in_range_int2_float4(int2, int2, float4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int2_float4(1::int2, 2::int2, 0.9::float4, true, true); in_range_int2_float4 ---------------------- t (1 row)
  • in_range_int2_int2(int2, int2, int2, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int2_int2(1::int2, 1::int2, 1::int2, true, true); in_range_int2_int2 -------------------- f (1 row)
  • in_range_int1_float4(int1, int1, float4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int1_float4(1::int1, 2::int1, 0.9::float4, true, true); in_range_int1_float4 ---------------------- t (1 row)
  • in_range_int2_int1(int2, int2, int1, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int2_int1(1::int2, 1::int2, 1::int1, true, true); in_range_int2_int1 -------------------- f (1 row)
  • in_range_int1_int1(int1, int1, int1, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int1_int1(1::int1, 1::int1, 1::int1, true, true); in_range_int1_int1 -------------------- f (1 row)
  • in_range_int4_int1(int4, int4, int1, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int4_int1(1::int4, 1::int4, 1::int1, true, true); in_range_int4_int1 -------------------- f (1 row)
  • in_range_int4_float4(int4, int4, float4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int4_float4(1::int4, 2::int4, 0.9::float4, true, true); in_range_int4_float4 ---------------------- t (1 row)
  • in_range_int8_int1(int8, int8, int1, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int8_int1(1::int8, 1::int8, 1::int1, true, true); in_range_int8_int1 -------------------- f (1 row)
  • in_range_int8_float4(int8, int8, float4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int8_float4(1::int8, 2::int8, 0.9::float4, true, true); in_range_int8_float4 ---------------------- t (1 row)
  • in_range_numeric_int8(numeric, numeric, int8, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_numeric_int8(1.0::numeric(10,4), 1.9::numeric(10,4), 1.0::int8, true, true); in_range_numeric_int8 ----------------------- f (1 row)
  • in_range_numeric_int4(numeric, numeric, int4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_numeric_int4(1.0::numeric(10,4), 1.9::numeric(10,4), 1.0::int4, true, true); in_range_numeric_int4 ----------------------- f (1 row)
  • in_range_int4_int4(int4, int4, int4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int4_int4(1::int4, 1::int4, 1::int4, true, true); in_range_int4_int4 -------------------- f (1 row)
  • in_range_int2_int4(int2, int2, int4, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int2_int4(1::int2, 1::int2, 1::int4, true, true); in_range_int2_int4 -------------------- f (1 row)
  • in_range_int2_int8(int2, int2, int8, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int2_int8(1::int2, 1::int2, 1::int8, true, true); in_range_int2_int8 -------------------- f (1 row)
  • in_range_int4_int2(int4, int4, int2, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int4_int2(1::int4, 1::int4, 1::int2, true, true); in_range_int4_int2 -------------------- f (1 row)
  • in_range_int8_int8(int8, int8, int8, boolean, boolean) 描述:判断第一个参数,是否在第二个参数加/减第三个参数范围内。 参数说明: 第一个参数:需要被判断是否在范围内的数。 第二个参数:当前范围的起始值。 第三个参数:范围值,必须为正数。 第四个参数:当前操作为减操作或加操作。 TRUE:第二个参数减第三个参数再与第一个参数比较大小。 FALSE:第二个参数加第三个参数再与第一个参数比较大小。 第五个参数:第二个参数和第三个参数的运算结果与第一个参数做比较。 TRUE:判断结果是否大于第一个参数。若结果大于等于第一个参数则函数返回值为TRUE,反之为FALSE。 FALSE:判断结果是否小于等于第一个参数。若结果小于等于第一个参数则函数返回值为TRUE,反之为FALSE。 返回类型:Boolean 示例: gaussdb=# SELECT in_range_int8_int8(1::int8, 1::int8, 1::int8, true, true); in_range_int8_int8 -------------------- f (1 row)
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全