Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
hstore--1.4.sql551 linesDownload Raw Back to extension
1/* contrib/hstore/hstore--1.4.sql */2 3-- complain if script is sourced in psql, rather than via CREATE EXTENSION4\echo Use "CREATE EXTENSION hstore" to load this file. \quit5 6CREATE TYPE hstore;7 8CREATE FUNCTION hstore_in(cstring)9RETURNS hstore10AS 'MODULE_PATHNAME'11LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;12 13CREATE FUNCTION hstore_out(hstore)14RETURNS cstring15AS 'MODULE_PATHNAME'16LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;17 18CREATE FUNCTION hstore_recv(internal)19RETURNS hstore20AS 'MODULE_PATHNAME'21LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;22 23CREATE FUNCTION hstore_send(hstore)24RETURNS bytea25AS 'MODULE_PATHNAME'26LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;27 28CREATE TYPE hstore (29        INTERNALLENGTH = -1,30        INPUT = hstore_in,31        OUTPUT = hstore_out,32        RECEIVE = hstore_recv,33        SEND = hstore_send,34        STORAGE = extended35);36 37CREATE FUNCTION hstore_version_diag(hstore)38RETURNS integer39AS 'MODULE_PATHNAME','hstore_version_diag'40LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;41 42CREATE FUNCTION fetchval(hstore,text)43RETURNS text44AS 'MODULE_PATHNAME','hstore_fetchval'45LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;46 47CREATE OPERATOR -> (48	LEFTARG = hstore,49	RIGHTARG = text,50	PROCEDURE = fetchval51);52 53CREATE FUNCTION slice_array(hstore,text[])54RETURNS text[]55AS 'MODULE_PATHNAME','hstore_slice_to_array'56LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;57 58CREATE OPERATOR -> (59	LEFTARG = hstore,60	RIGHTARG = text[],61	PROCEDURE = slice_array62);63 64CREATE FUNCTION slice(hstore,text[])65RETURNS hstore66AS 'MODULE_PATHNAME','hstore_slice_to_hstore'67LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;68 69CREATE FUNCTION isexists(hstore,text)70RETURNS bool71AS 'MODULE_PATHNAME','hstore_exists'72LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;73 74CREATE FUNCTION exist(hstore,text)75RETURNS bool76AS 'MODULE_PATHNAME','hstore_exists'77LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;78 79CREATE OPERATOR ? (80	LEFTARG = hstore,81	RIGHTARG = text,82	PROCEDURE = exist,83	RESTRICT = contsel,84	JOIN = contjoinsel85);86 87CREATE FUNCTION exists_any(hstore,text[])88RETURNS bool89AS 'MODULE_PATHNAME','hstore_exists_any'90LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;91 92CREATE OPERATOR ?| (93	LEFTARG = hstore,94	RIGHTARG = text[],95	PROCEDURE = exists_any,96	RESTRICT = contsel,97	JOIN = contjoinsel98);99 100CREATE FUNCTION exists_all(hstore,text[])101RETURNS bool102AS 'MODULE_PATHNAME','hstore_exists_all'103LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;104 105CREATE OPERATOR ?& (106	LEFTARG = hstore,107	RIGHTARG = text[],108	PROCEDURE = exists_all,109	RESTRICT = contsel,110	JOIN = contjoinsel111);112 113CREATE FUNCTION isdefined(hstore,text)114RETURNS bool115AS 'MODULE_PATHNAME','hstore_defined'116LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;117 118CREATE FUNCTION defined(hstore,text)119RETURNS bool120AS 'MODULE_PATHNAME','hstore_defined'121LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;122 123CREATE FUNCTION delete(hstore,text)124RETURNS hstore125AS 'MODULE_PATHNAME','hstore_delete'126LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;127 128CREATE FUNCTION delete(hstore,text[])129RETURNS hstore130AS 'MODULE_PATHNAME','hstore_delete_array'131LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;132 133CREATE FUNCTION delete(hstore,hstore)134RETURNS hstore135AS 'MODULE_PATHNAME','hstore_delete_hstore'136LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;137 138CREATE OPERATOR - (139	LEFTARG = hstore,140	RIGHTARG = text,141	PROCEDURE = delete142);143 144CREATE OPERATOR - (145	LEFTARG = hstore,146	RIGHTARG = text[],147	PROCEDURE = delete148);149 150CREATE OPERATOR - (151	LEFTARG = hstore,152	RIGHTARG = hstore,153	PROCEDURE = delete154);155 156CREATE FUNCTION hs_concat(hstore,hstore)157RETURNS hstore158AS 'MODULE_PATHNAME','hstore_concat'159LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;160 161CREATE OPERATOR || (162	LEFTARG = hstore,163	RIGHTARG = hstore,164	PROCEDURE = hs_concat165);166 167CREATE FUNCTION hs_contains(hstore,hstore)168RETURNS bool169AS 'MODULE_PATHNAME','hstore_contains'170LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;171 172CREATE FUNCTION hs_contained(hstore,hstore)173RETURNS bool174AS 'MODULE_PATHNAME','hstore_contained'175LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;176 177CREATE OPERATOR @> (178	LEFTARG = hstore,179	RIGHTARG = hstore,180	PROCEDURE = hs_contains,181	COMMUTATOR = '<@',182	RESTRICT = contsel,183	JOIN = contjoinsel184);185 186CREATE OPERATOR <@ (187	LEFTARG = hstore,188	RIGHTARG = hstore,189	PROCEDURE = hs_contained,190	COMMUTATOR = '@>',191	RESTRICT = contsel,192	JOIN = contjoinsel193);194 195-- obsolete:196CREATE OPERATOR @ (197	LEFTARG = hstore,198	RIGHTARG = hstore,199	PROCEDURE = hs_contains,200	COMMUTATOR = '~',201	RESTRICT = contsel,202	JOIN = contjoinsel203);204 205CREATE OPERATOR ~ (206	LEFTARG = hstore,207	RIGHTARG = hstore,208	PROCEDURE = hs_contained,209	COMMUTATOR = '@',210	RESTRICT = contsel,211	JOIN = contjoinsel212);213 214CREATE FUNCTION tconvert(text,text)215RETURNS hstore216AS 'MODULE_PATHNAME','hstore_from_text'217LANGUAGE C IMMUTABLE PARALLEL SAFE; -- not STRICT; needs to allow (key,NULL)218 219CREATE FUNCTION hstore(text,text)220RETURNS hstore221AS 'MODULE_PATHNAME','hstore_from_text'222LANGUAGE C IMMUTABLE PARALLEL SAFE; -- not STRICT; needs to allow (key,NULL)223 224CREATE FUNCTION hstore(text[],text[])225RETURNS hstore226AS 'MODULE_PATHNAME', 'hstore_from_arrays'227LANGUAGE C IMMUTABLE PARALLEL SAFE; -- not STRICT; allows (keys,null)228 229CREATE FUNCTION hstore(text[])230RETURNS hstore231AS 'MODULE_PATHNAME', 'hstore_from_array'232LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;233 234CREATE CAST (text[] AS hstore)235  WITH FUNCTION hstore(text[]);236 237CREATE FUNCTION hstore_to_json(hstore)238RETURNS json239AS 'MODULE_PATHNAME', 'hstore_to_json'240LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;241 242CREATE CAST (hstore AS json)243  WITH FUNCTION hstore_to_json(hstore);244 245CREATE FUNCTION hstore_to_json_loose(hstore)246RETURNS json247AS 'MODULE_PATHNAME', 'hstore_to_json_loose'248LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;249 250CREATE FUNCTION hstore_to_jsonb(hstore)251RETURNS jsonb252AS 'MODULE_PATHNAME', 'hstore_to_jsonb'253LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;254 255CREATE CAST (hstore AS jsonb)256  WITH FUNCTION hstore_to_jsonb(hstore);257 258CREATE FUNCTION hstore_to_jsonb_loose(hstore)259RETURNS jsonb260AS 'MODULE_PATHNAME', 'hstore_to_jsonb_loose'261LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;262 263CREATE FUNCTION hstore(record)264RETURNS hstore265AS 'MODULE_PATHNAME', 'hstore_from_record'266LANGUAGE C IMMUTABLE PARALLEL SAFE; -- not STRICT; allows (null::recordtype)267 268CREATE FUNCTION hstore_to_array(hstore)269RETURNS text[]270AS 'MODULE_PATHNAME','hstore_to_array'271LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;272 273CREATE OPERATOR %% (274       RIGHTARG = hstore,275       PROCEDURE = hstore_to_array276);277 278CREATE FUNCTION hstore_to_matrix(hstore)279RETURNS text[]280AS 'MODULE_PATHNAME','hstore_to_matrix'281LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;282 283CREATE OPERATOR %# (284       RIGHTARG = hstore,285       PROCEDURE = hstore_to_matrix286);287 288CREATE FUNCTION akeys(hstore)289RETURNS text[]290AS 'MODULE_PATHNAME','hstore_akeys'291LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;292 293CREATE FUNCTION avals(hstore)294RETURNS text[]295AS 'MODULE_PATHNAME','hstore_avals'296LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;297 298CREATE FUNCTION skeys(hstore)299RETURNS setof text300AS 'MODULE_PATHNAME','hstore_skeys'301LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;302 303CREATE FUNCTION svals(hstore)304RETURNS setof text305AS 'MODULE_PATHNAME','hstore_svals'306LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;307 308CREATE FUNCTION each(IN hs hstore,309    OUT key text,310    OUT value text)311RETURNS SETOF record312AS 'MODULE_PATHNAME','hstore_each'313LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;314 315CREATE FUNCTION populate_record(anyelement,hstore)316RETURNS anyelement317AS 'MODULE_PATHNAME', 'hstore_populate_record'318LANGUAGE C IMMUTABLE PARALLEL SAFE; -- not STRICT; allows (null::rectype,hstore)319 320CREATE OPERATOR #= (321	LEFTARG = anyelement,322	RIGHTARG = hstore,323	PROCEDURE = populate_record324);325 326-- btree support327 328CREATE FUNCTION hstore_eq(hstore,hstore)329RETURNS boolean330AS 'MODULE_PATHNAME','hstore_eq'331LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;332 333CREATE FUNCTION hstore_ne(hstore,hstore)334RETURNS boolean335AS 'MODULE_PATHNAME','hstore_ne'336LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;337 338CREATE FUNCTION hstore_gt(hstore,hstore)339RETURNS boolean340AS 'MODULE_PATHNAME','hstore_gt'341LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;342 343CREATE FUNCTION hstore_ge(hstore,hstore)344RETURNS boolean345AS 'MODULE_PATHNAME','hstore_ge'346LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;347 348CREATE FUNCTION hstore_lt(hstore,hstore)349RETURNS boolean350AS 'MODULE_PATHNAME','hstore_lt'351LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;352 353CREATE FUNCTION hstore_le(hstore,hstore)354RETURNS boolean355AS 'MODULE_PATHNAME','hstore_le'356LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;357 358CREATE FUNCTION hstore_cmp(hstore,hstore)359RETURNS integer360AS 'MODULE_PATHNAME','hstore_cmp'361LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;362 363CREATE OPERATOR = (364       LEFTARG = hstore,365       RIGHTARG = hstore,366       PROCEDURE = hstore_eq,367       COMMUTATOR = =,368       NEGATOR = <>,369       RESTRICT = eqsel,370       JOIN = eqjoinsel,371       MERGES,372       HASHES373);374CREATE OPERATOR <> (375       LEFTARG = hstore,376       RIGHTARG = hstore,377       PROCEDURE = hstore_ne,378       COMMUTATOR = <>,379       NEGATOR = =,380       RESTRICT = neqsel,381       JOIN = neqjoinsel382);383 384-- the comparison operators have funky names (and are undocumented)385-- in an attempt to discourage anyone from actually using them. they386-- only exist to support the btree opclass387 388CREATE OPERATOR #<# (389       LEFTARG = hstore,390       RIGHTARG = hstore,391       PROCEDURE = hstore_lt,392       COMMUTATOR = #>#,393       NEGATOR = #>=#,394       RESTRICT = scalarltsel,395       JOIN = scalarltjoinsel396);397CREATE OPERATOR #<=# (398       LEFTARG = hstore,399       RIGHTARG = hstore,400       PROCEDURE = hstore_le,401       COMMUTATOR = #>=#,402       NEGATOR = #>#,403       RESTRICT = scalarltsel,404       JOIN = scalarltjoinsel405);406CREATE OPERATOR #># (407       LEFTARG = hstore,408       RIGHTARG = hstore,409       PROCEDURE = hstore_gt,410       COMMUTATOR = #<#,411       NEGATOR = #<=#,412       RESTRICT = scalargtsel,413       JOIN = scalargtjoinsel414);415CREATE OPERATOR #>=# (416       LEFTARG = hstore,417       RIGHTARG = hstore,418       PROCEDURE = hstore_ge,419       COMMUTATOR = #<=#,420       NEGATOR = #<#,421       RESTRICT = scalargtsel,422       JOIN = scalargtjoinsel423);424 425CREATE OPERATOR CLASS btree_hstore_ops426DEFAULT FOR TYPE hstore USING btree427AS428	OPERATOR	1	#<# ,429	OPERATOR	2	#<=# ,430	OPERATOR	3	= ,431	OPERATOR	4	#>=# ,432	OPERATOR	5	#># ,433	FUNCTION	1	hstore_cmp(hstore,hstore);434 435-- hash support436 437CREATE FUNCTION hstore_hash(hstore)438RETURNS integer439AS 'MODULE_PATHNAME','hstore_hash'440LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;441 442CREATE OPERATOR CLASS hash_hstore_ops443DEFAULT FOR TYPE hstore USING hash444AS445	OPERATOR	1	= ,446	FUNCTION	1	hstore_hash(hstore);447 448-- GiST support449 450CREATE TYPE ghstore;451 452CREATE FUNCTION ghstore_in(cstring)453RETURNS ghstore454AS 'MODULE_PATHNAME'455LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;456 457CREATE FUNCTION ghstore_out(ghstore)458RETURNS cstring459AS 'MODULE_PATHNAME'460LANGUAGE C STRICT IMMUTABLE PARALLEL SAFE;461 462CREATE TYPE ghstore (463        INTERNALLENGTH = -1,464        INPUT = ghstore_in,465        OUTPUT = ghstore_out466);467 468CREATE FUNCTION ghstore_compress(internal)469RETURNS internal470AS 'MODULE_PATHNAME'471LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;472 473CREATE FUNCTION ghstore_decompress(internal)474RETURNS internal475AS 'MODULE_PATHNAME'476LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;477 478CREATE FUNCTION ghstore_penalty(internal,internal,internal)479RETURNS internal480AS 'MODULE_PATHNAME'481LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;482 483CREATE FUNCTION ghstore_picksplit(internal, internal)484RETURNS internal485AS 'MODULE_PATHNAME'486LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;487 488CREATE FUNCTION ghstore_union(internal, internal)489RETURNS ghstore490AS 'MODULE_PATHNAME'491LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;492 493CREATE FUNCTION ghstore_same(ghstore, ghstore, internal)494RETURNS internal495AS 'MODULE_PATHNAME'496LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;497 498CREATE FUNCTION ghstore_consistent(internal,hstore,smallint,oid,internal)499RETURNS bool500AS 'MODULE_PATHNAME'501LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;502 503CREATE OPERATOR CLASS gist_hstore_ops504DEFAULT FOR TYPE hstore USING gist505AS506	OPERATOR        7       @> ,507	OPERATOR        9       ?(hstore,text) ,508	OPERATOR        10      ?|(hstore,text[]) ,509	OPERATOR        11      ?&(hstore,text[]) ,510        --OPERATOR        8       <@ ,511        OPERATOR        13      @ ,512        --OPERATOR        14      ~ ,513        FUNCTION        1       ghstore_consistent (internal, hstore, smallint, oid, internal),514        FUNCTION        2       ghstore_union (internal, internal),515        FUNCTION        3       ghstore_compress (internal),516        FUNCTION        4       ghstore_decompress (internal),517        FUNCTION        5       ghstore_penalty (internal, internal, internal),518        FUNCTION        6       ghstore_picksplit (internal, internal),519        FUNCTION        7       ghstore_same (ghstore, ghstore, internal),520        STORAGE         ghstore;521 522-- GIN support523 524CREATE FUNCTION gin_extract_hstore(hstore, internal)525RETURNS internal526AS 'MODULE_PATHNAME'527LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;528 529CREATE FUNCTION gin_extract_hstore_query(hstore, internal, int2, internal, internal)530RETURNS internal531AS 'MODULE_PATHNAME'532LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;533 534CREATE FUNCTION gin_consistent_hstore(internal, int2, hstore, int4, internal, internal)535RETURNS bool536AS 'MODULE_PATHNAME'537LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;538 539CREATE OPERATOR CLASS gin_hstore_ops540DEFAULT FOR TYPE hstore USING gin541AS542	OPERATOR        7       @>,543	OPERATOR        9       ?(hstore,text),544	OPERATOR        10      ?|(hstore,text[]),545	OPERATOR        11      ?&(hstore,text[]),546	FUNCTION        1       bttextcmp(text,text),547	FUNCTION        2       gin_extract_hstore(hstore, internal),548	FUNCTION        3       gin_extract_hstore_query(hstore, internal, int2, internal, internal),549	FUNCTION        4       gin_consistent_hstore(internal, int2, hstore, int4, internal, internal),550	STORAGE         text;551 
codekingpro/portable-devtools · Team Ai