]> git.8kb.co.uk Git - postgresql/pg_jsonb_opx/blob - jsonb_opx.sql.in
782beffa0c881f1d40dfc69389bea7270ab2af03
[postgresql/pg_jsonb_opx] / jsonb_opx.sql.in
1 CREATE OR REPLACE FUNCTION public.jsonb_delete(jsonb, text[]) 
2 RETURNS jsonb
3         AS 'MODULE_PATHNAME', 'jsonb_delete_text'
4 LANGUAGE C IMMUTABLE STRICT;
5 COMMENT ON FUNCTION public.jsonb_delete(jsonb, text[]) IS 'delete keys in second argument from first argument';
6
7 -- DROP OPERATOR - (jsonb, text[]);
8 CREATE OPERATOR - ( PROCEDURE = public.jsonb_delete, LEFTARG = jsonb, RIGHTARG = text[]);
9 COMMENT ON OPERATOR - (jsonb, text[]) IS 'delete keys from left operand';
10
11 --
12
13 CREATE OR REPLACE FUNCTION public.jsonb_delete (jsonb, text) 
14 RETURNS jsonb
15     AS 'SELECT jsonb_delete($1, ARRAY[$2]);'
16 LANGUAGE SQL IMMUTABLE STRICT; 
17 COMMENT ON FUNCTION public.jsonb_delete(jsonb, text) IS 'delete key in second argument from first argument';
18
19 -- DROP OPERATOR - (jsonb, text);
20 CREATE OPERATOR - ( PROCEDURE = public.jsonb_delete, LEFTARG = jsonb, RIGHTARG = text);
21 COMMENT ON OPERATOR - (jsonb, text) IS 'delete key from left operand';
22
23 --
24
25 CREATE OR REPLACE FUNCTION public.jsonb_delete(jsonb, jsonb) 
26 RETURNS jsonb
27         AS 'MODULE_PATHNAME', 'jsonb_delete_jsonb'
28 LANGUAGE C IMMUTABLE STRICT;
29 COMMENT ON FUNCTION public.jsonb_delete(jsonb, jsonb) IS 'delete matching pairs in second argument from first argument';
30
31 -- DROP OPERATOR - (jsonb, jsonb);
32 CREATE OPERATOR - ( PROCEDURE = public.jsonb_delete, LEFTARG = jsonb, RIGHTARG = jsonb);
33 COMMENT ON OPERATOR - (jsonb, jsonb) IS 'delete matching pairs from left operand';
34
35 --
36
37 CREATE OR REPLACE FUNCTION public.jsonb_concat(jsonb, jsonb)
38 RETURNS jsonb
39     AS 'MODULE_PATHNAME', 'jsonb_concat_jsonb'
40 LANGUAGE C IMMUTABLE STRICT;
41 COMMENT ON FUNCTION public.jsonb_concat(jsonb, jsonb) IS 'concatenate first and second jsonb arguments';
42
43 -- DROP OPERATOR || (jsonb, jsonb);
44 CREATE OPERATOR || ( PROCEDURE = public.jsonb_concat, LEFTARG = jsonb, RIGHTARG = jsonb);
45 COMMENT ON OPERATOR || (jsonb, jsonb) IS 'concatenate jsonb types';