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