anymultirange
Indicates that a function accepts any multirange data type (see Section 36.2.5 and Section 8.17 ).
当前阅读 PG 18·选择有来源记录的版本
此版本暂无所选语言的定义,以下显示原始英文内容。
- Catalog name
- pg_catalog.anymultirange
- Type OID
- 4537
- Type kind
- Pseudo-type
- Declared length
- Variable length (varlena)
- Storage strategy
- extended
- Input function
- anymultirange_in
- Output function
- anymultirange_out
- Documented declaration
- anymultirange
- Manual description
- Indicates that a function accepts any multirange data type (see Section 36.2.5 and Section 8.17 ).
- aliases
- 未知
- casts
- 未知
- coverage
- source inventory; exact declared input types for operator classes
- manual documentation
- dedicated family chapter
- manual path
- datatype-pseudo.html
- ranges
- 未知
- signature
- anymultirange
版本定义 PG 18
8.21. Pseudo-Types
The PostgreSQL type system contains a number of special-purpose entries that are collectively called pseudo-types. A pseudo-type cannot be used as a column data type, but it can be used to declare a function's argument or result type. Each of the available pseudo-types is useful in situations where a function's behavior does not correspond to simply taking or returning a value of a specific SQL data type. Table 8.27 lists the existing pseudo-types.
Table 8.27. Pseudo-Types
| Name | Description |
|---|---|
any |
Indicates that a function accepts any input data type. |
anyelement |
Indicates that a function accepts any data type (see Section 36.2.5). |
anyarray |
Indicates that a function accepts any array data type (see Section 36.2.5). |
anynonarray |
Indicates that a function accepts any non-array data type (see Section 36.2.5). |
anyenum |
Indicates that a function accepts any enum data type (see Section 36.2.5 and Section 8.7). |
anyrange |
Indicates that a function accepts any range data type (see Section 36.2.5 and Section 8.17). |
anymultirange |
Indicates that a function accepts any multirange data type (see Section 36.2.5 and Section 8.17). |
anycompatible |
Indicates that a function accepts any data type, with automatic promotion of multiple arguments to a common data type (see Section 36.2.5). |
anycompatiblearray |
Indicates that a function accepts any array data type, with automatic promotion of multiple arguments to a common data type (see Section 36.2.5). |
anycompatiblenonarray |
Indicates that a function accepts any non-array data type, with automatic promotion of multiple arguments to a common data type (see Section 36.2.5). |
anycompatiblerange |
Indicates that a function accepts any range data type, with automatic promotion of multiple arguments to a common data type (see Section 36.2.5 and Section 8.17). |
anycompatiblemultirange |
Indicates that a function accepts any multirange data type, with automatic promotion of multiple arguments to a common data type (see Section 36.2.5 and Section 8.17). |
cstring |
Indicates that a function accepts or returns a null-terminated C string. |
internal |
Indicates that a function accepts or returns a server-internal data type. |
language_handler |
A procedural language call handler is declared to return language_handler. |
fdw_handler |
A foreign-data wrapper handler is declared to return fdw_handler. |
table_am_handler |
A table access method handler is declared to return table_am_handler. |
index_am_handler |
An index access method handler is declared to return index_am_handler. |
tsm_handler |
A tablesample method handler is declared to return tsm_handler. |
record |
Identifies a function taking or returning an unspecified row type. |
trigger |
A trigger function is declared to return trigger. |
event_trigger |
An event trigger function is declared to return event_trigger. |
pg_ddl_command |
Identifies a representation of DDL commands that is available to event triggers. |
void |
Indicates that a function returns no value. |
unknown |
Identifies a not-yet-resolved type, e.g., of an undecorated string literal. |
Functions coded in C (whether built-in or dynamically loaded) can be declared to accept or return any of these pseudo-types. It is up to the function author to ensure that the function will behave safely when a pseudo-type is used as an argument type.
Functions coded in procedural languages can use pseudo-types only as allowed by their implementation languages. At present most procedural languages forbid use of a pseudo-type as an argument type, and allow only void and record as a result type (plus trigger or event_trigger when the function is used as a trigger or event trigger). Some also support polymorphic functions using the polymorphic pseudo-types, which are shown above and discussed in detail in Section 36.2.5.
The internal pseudo-type is used to declare functions that are meant only to be called internally by the database system, and not by direct invocation in an SQL query. If a function has at least one internal-type argument then it cannot be called from SQL. To preserve the type safety of this restriction it is important to follow this coding rule: do not create any function that is declared to return internal unless it has at least one internal argument.
比较版本
完整来源事实
catalog
{"array_type_name":"","array_type_oid":"0","descr":"pseudo-type representing a polymorphic base type that is a multirange","oid":"4537","typacl":"_null_","typalign":"d","typanalyze":"-","typarray":"0","typbasetype":"0","typbyval":"f","typcategory":"P","typcollation":"0","typdefault":"_null_","typdefaultbin":"_null_","typdelim":"','","typelem":"0","typinput":"anymultirange_in","typisdefined":"t","typispreferred":"f","typlen":"-1","typmodin":"-","typmodout":"-","typname":"anymultirange","typnamespace":"pg_catalog","typndims":"0","typnotnull":"f","typoutput":"anymultirange_out","typowner":"POSTGRES","typreceive":"-","typrelid":"0","typsend":"-","typstorage":"x","typsubscript":"-","typtype":"p","typtypmod":"-1"}operator classes
map[opcdefault:t opcfamily:btree/multirange_ops opcintype:anymultirange opckeytype:0 opcmethod:btree opcname:multirange_ops opcnamespace:pg_catalog opcowner:POSTGRES], map[opcdefault:t opcfamily:hash/multirange_ops opcintype:anymultirange opckeytype:0 opcmethod:hash opcname:multirange_ops opcnamespace:pg_catalog opcowner:POSTGRES], map[opcdefault:t opcfamily:gist/multirange_ops opcintype:anymultirange opckeytype:anyrange opcmethod:gist opcname:multirange_ops opcnamespace:pg_catalog opcowner:POSTGRES]
operators
map[descr:equal oid:2860 oid_symbol:MULTIRANGE_EQ_OP oprcanhash:t oprcanmerge:t oprcode:multirange_eq oprcom:=(anymultirange,anymultirange) oprjoin:eqjoinsel oprkind:b oprleft:anymultirange oprname:= oprnamespace:pg_catalog oprnegate:<>(anymultirange,anymultirange) oprowner:POSTGRES oprrest:eqsel oprresult:bool oprright:anymultirange], map[descr:not equal oid:2861 oprcanhash:f oprcanmerge:f oprcode:multirange_ne oprcom:<>(anymultirange,anymultirange) oprjoin:neqjoinsel oprkind:b oprleft:anymultirange oprname:<> oprnamespace:pg_catalog oprnegate:=(anymultirange,anymultirange) oprowner:POSTGRES oprrest:neqsel oprresult:bool oprright:anymultirange], map[descr:less than oid:2862 oid_symbol:OID_MULTIRANGE_LESS_OP oprcanhash:f oprcanmerge:f oprcode:multirange_lt oprcom:>(anymultirange,anymultirange) oprjoin:scalarltjoinsel oprkind:b oprleft:anymultirange oprname:< oprnamespace:pg_catalog oprnegate:>=(anymultirange,anymultirange) oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:less than or equal oid:2863 oid_symbol:OID_MULTIRANGE_LESS_EQUAL_OP oprcanhash:f oprcanmerge:f oprcode:multirange_le oprcom:>=(anymultirange,anymultirange) oprjoin:scalarlejoinsel oprkind:b oprleft:anymultirange oprname:<= oprnamespace:pg_catalog oprnegate:>(anymultirange,anymultirange) oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:greater than or equal oid:2864 oid_symbol:OID_MULTIRANGE_GREATER_EQUAL_OP oprcanhash:f oprcanmerge:f oprcode:multirange_ge oprcom:<=(anymultirange,anymultirange) oprjoin:scalargejoinsel oprkind:b oprleft:anymultirange oprname:>= oprnamespace:pg_catalog oprnegate:<(anymultirange,anymultirange) oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:greater than oid:2865 oid_symbol:OID_MULTIRANGE_GREATER_OP oprcanhash:f oprcanmerge:f oprcode:multirange_gt oprcom:<(anymultirange,anymultirange) oprjoin:scalargtjoinsel oprkind:b oprleft:anymultirange oprname:> oprnamespace:pg_catalog oprnegate:<=(anymultirange,anymultirange) oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:overlaps oid:2866 oid_symbol:OID_RANGE_OVERLAPS_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_overlaps_multirange oprcom:&&(anymultirange,anyrange) oprjoin:areajoinsel oprkind:b oprleft:anyrange oprname:&& oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:overlaps oid:2867 oid_symbol:OID_MULTIRANGE_OVERLAPS_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_overlaps_range oprcom:&&(anyrange,anymultirange) oprjoin:areajoinsel oprkind:b oprleft:anymultirange oprname:&& oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:overlaps oid:2868 oid_symbol:OID_MULTIRANGE_OVERLAPS_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_overlaps_multirange oprcom:&&(anymultirange,anymultirange) oprjoin:areajoinsel oprkind:b oprleft:anymultirange oprname:&& oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:contains oid:2869 oid_symbol:OID_MULTIRANGE_CONTAINS_ELEM_OP oprcanhash:f oprcanmerge:f oprcode:multirange_contains_elem oprcom:<@(anyelement,anymultirange) oprjoin:contjoinsel oprkind:b oprleft:anymultirange oprname:@> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyelement], map[descr:contains oid:2870 oid_symbol:OID_MULTIRANGE_CONTAINS_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_contains_range oprcom:<@(anyrange,anymultirange) oprjoin:contjoinsel oprkind:b oprleft:anymultirange oprname:@> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:contains oid:2871 oid_symbol:OID_MULTIRANGE_CONTAINS_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_contains_multirange oprcom:<@(anymultirange,anymultirange) oprjoin:contjoinsel oprkind:b oprleft:anymultirange oprname:@> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is contained by oid:2872 oid_symbol:OID_MULTIRANGE_ELEM_CONTAINED_OP oprcanhash:f oprcanmerge:f oprcode:elem_contained_by_multirange oprcom:@>(anymultirange,anyelement) oprjoin:contjoinsel oprkind:b oprleft:anyelement oprname:<@ oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is contained by oid:2873 oid_symbol:OID_MULTIRANGE_RANGE_CONTAINED_OP oprcanhash:f oprcanmerge:f oprcode:range_contained_by_multirange oprcom:@>(anymultirange,anyrange) oprjoin:contjoinsel oprkind:b oprleft:anyrange oprname:<@ oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is contained by oid:2874 oid_symbol:OID_MULTIRANGE_MULTIRANGE_CONTAINED_OP oprcanhash:f oprcanmerge:f oprcode:multirange_contained_by_multirange oprcom:@>(anymultirange,anymultirange) oprjoin:contjoinsel oprkind:b oprleft:anymultirange oprname:<@ oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:contains oid:4539 oid_symbol:OID_RANGE_CONTAINS_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_contains_multirange oprcom:<@(anymultirange,anyrange) oprjoin:contjoinsel oprkind:b oprleft:anyrange oprname:@> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is contained by oid:4540 oid_symbol:OID_RANGE_MULTIRANGE_CONTAINED_OP oprcanhash:f oprcanmerge:f oprcode:multirange_contained_by_range oprcom:@>(anyrange,anymultirange) oprjoin:contjoinsel oprkind:b oprleft:anymultirange oprname:<@ oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:overlaps or is left of oid:2875 oid_symbol:OID_RANGE_OVERLAPS_LEFT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_overleft_multirange oprcom:0 oprjoin:scalarltjoinsel oprkind:b oprleft:anyrange oprname:&< oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:overlaps or is left of oid:2876 oid_symbol:OID_MULTIRANGE_OVERLAPS_LEFT_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_overleft_range oprcom:0 oprjoin:scalarltjoinsel oprkind:b oprleft:anymultirange oprname:&< oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:overlaps or is left of oid:2877 oid_symbol:OID_MULTIRANGE_OVERLAPS_LEFT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_overleft_multirange oprcom:0 oprjoin:scalarltjoinsel oprkind:b oprleft:anymultirange oprname:&< oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:overlaps or is right of oid:3585 oid_symbol:OID_RANGE_OVERLAPS_RIGHT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_overright_multirange oprcom:0 oprjoin:scalargtjoinsel oprkind:b oprleft:anyrange oprname:&> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:overlaps or is right of oid:4035 oid_symbol:OID_MULTIRANGE_OVERLAPS_RIGHT_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_overright_range oprcom:0 oprjoin:scalargtjoinsel oprkind:b oprleft:anymultirange oprname:&> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:overlaps or is right of oid:4142 oid_symbol:OID_MULTIRANGE_OVERLAPS_RIGHT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_overright_multirange oprcom:0 oprjoin:scalargtjoinsel oprkind:b oprleft:anymultirange oprname:&> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is adjacent to oid:4179 oid_symbol:OID_RANGE_ADJACENT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_adjacent_multirange oprcom:-|-(anymultirange,anyrange) oprjoin:matchingjoinsel oprkind:b oprleft:anyrange oprname:-|- oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:matchingsel oprresult:bool oprright:anymultirange], map[descr:is adjacent to oid:4180 oid_symbol:OID_MULTIRANGE_ADJACENT_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_adjacent_range oprcom:-|-(anyrange,anymultirange) oprjoin:matchingjoinsel oprkind:b oprleft:anymultirange oprname:-|- oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:matchingsel oprresult:bool oprright:anyrange], map[descr:is adjacent to oid:4198 oid_symbol:OID_MULTIRANGE_ADJACENT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_adjacent_multirange oprcom:-|-(anymultirange,anymultirange) oprjoin:matchingjoinsel oprkind:b oprleft:anymultirange oprname:-|- oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:matchingsel oprresult:bool oprright:anymultirange], map[descr:multirange union oid:4392 oprcanhash:f oprcanmerge:f oprcode:multirange_union oprcom:+(anymultirange,anymultirange) oprjoin:- oprkind:b oprleft:anymultirange oprname:+ oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:- oprresult:anymultirange oprright:anymultirange], map[descr:multirange minus oid:4393 oprcanhash:f oprcanmerge:f oprcode:multirange_minus oprcom:0 oprjoin:- oprkind:b oprleft:anymultirange oprname:- oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:- oprresult:anymultirange oprright:anymultirange], map[descr:multirange intersect oid:4394 oid_symbol:OID_MULTIRANGE_INTERSECT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_intersect oprcom:*(anymultirange,anymultirange) oprjoin:- oprkind:b oprleft:anymultirange oprname:* oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:- oprresult:anymultirange oprright:anymultirange], map[descr:is left of oid:4395 oid_symbol:OID_RANGE_LEFT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_before_multirange oprcom:>>(anymultirange,anyrange) oprjoin:scalarltjoinsel oprkind:b oprleft:anyrange oprname:<< oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is left of oid:4396 oid_symbol:OID_MULTIRANGE_LEFT_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_before_range oprcom:>>(anyrange,anymultirange) oprjoin:scalarltjoinsel oprkind:b oprleft:anymultirange oprname:<< oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:is left of oid:4397 oid_symbol:OID_MULTIRANGE_LEFT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_before_multirange oprcom:>>(anymultirange,anymultirange) oprjoin:scalarltjoinsel oprkind:b oprleft:anymultirange oprname:<< oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is right of oid:4398 oid_symbol:OID_RANGE_RIGHT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:range_after_multirange oprcom:<<(anymultirange,anyrange) oprjoin:scalargtjoinsel oprkind:b oprleft:anyrange oprname:>> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange], map[descr:is right of oid:4399 oid_symbol:OID_MULTIRANGE_RIGHT_RANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_after_range oprcom:<<(anyrange,anymultirange) oprjoin:scalargtjoinsel oprkind:b oprleft:anymultirange oprname:>> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anyrange], map[descr:is right of oid:4400 oid_symbol:OID_MULTIRANGE_RIGHT_MULTIRANGE_OP oprcanhash:f oprcanmerge:f oprcode:multirange_after_multirange oprcom:<<(anymultirange,anymultirange) oprjoin:scalargtjoinsel oprkind:b oprleft:anymultirange oprname:>> oprnamespace:pg_catalog oprnegate:0 oprowner:POSTGRES oprrest:multirangesel oprresult:bool oprright:anymultirange]
来源引用
定义来源
center · PostgreSQL 18 · 555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f
正文语言: en · 555610c24d53e4316da5b7d3fc25c279d96856d5e0e23ee308c328c5fa881d9f