@@ -1416,6 +1416,14 @@ LANGUAGE INTERNAL
1416
1416
STRICT IMMUTABLE PARALLEL SAFE
1417
1417
AS ' make_interval' ;
1418
1418
1419
+ CREATE OR REPLACE FUNCTION
1420
+ json_set(json_in json, path text [] , replacement json,
1421
+ create_if_missing boolean DEFAULT true)
1422
+ RETURNS json
1423
+ LANGUAGE INTERNAL
1424
+ STRICT IMMUTABLE PARALLEL SAFE
1425
+ AS ' json_set' ;
1426
+
1419
1427
CREATE OR REPLACE FUNCTION
1420
1428
jsonb_set(jsonb_in jsonb, path text [] , replacement jsonb,
1421
1429
create_if_missing boolean DEFAULT true)
@@ -1440,6 +1448,14 @@ LANGUAGE INTERNAL
1440
1448
STRICT IMMUTABLE PARALLEL SAFE
1441
1449
AS ' parse_ident' ;
1442
1450
1451
+ CREATE OR REPLACE FUNCTION
1452
+ json_insert(json_in json, path text [] , replacement json,
1453
+ insert_after boolean DEFAULT false)
1454
+ RETURNS json
1455
+ LANGUAGE INTERNAL
1456
+ STRICT IMMUTABLE PARALLEL SAFE
1457
+ AS ' json_insert' ;
1458
+
1443
1459
CREATE OR REPLACE FUNCTION
1444
1460
jsonb_insert(jsonb_in jsonb, path text [] , replacement jsonb,
1445
1461
insert_after boolean DEFAULT false)
@@ -1528,6 +1544,88 @@ LANGUAGE INTERNAL
1528
1544
STRICT STABLE PARALLEL SAFE
1529
1545
AS ' jsonb_path_query_first_tz' ;
1530
1546
1547
+
1548
+ CREATE OR REPLACE FUNCTION
1549
+ json_path_exists(target json, path jsonpath, vars json DEFAULT ' {}' ,
1550
+ silent boolean DEFAULT false)
1551
+ RETURNS boolean
1552
+ LANGUAGE INTERNAL
1553
+ STRICT IMMUTABLE PARALLEL SAFE
1554
+ AS ' json_path_exists' ;
1555
+
1556
+ CREATE OR REPLACE FUNCTION
1557
+ json_path_match(target json, path jsonpath, vars json DEFAULT ' {}' ,
1558
+ silent boolean DEFAULT false)
1559
+ RETURNS boolean
1560
+ LANGUAGE INTERNAL
1561
+ STRICT IMMUTABLE PARALLEL SAFE
1562
+ AS ' json_path_match' ;
1563
+
1564
+ CREATE OR REPLACE FUNCTION
1565
+ json_path_query(target json, path jsonpath, vars json DEFAULT ' {}' ,
1566
+ silent boolean DEFAULT false)
1567
+ RETURNS SETOF json
1568
+ LANGUAGE INTERNAL
1569
+ STRICT IMMUTABLE PARALLEL SAFE
1570
+ AS ' json_path_query' ;
1571
+
1572
+ CREATE OR REPLACE FUNCTION
1573
+ json_path_query_array(target json, path jsonpath, vars json DEFAULT ' {}' ,
1574
+ silent boolean DEFAULT false)
1575
+ RETURNS json
1576
+ LANGUAGE INTERNAL
1577
+ STRICT IMMUTABLE PARALLEL SAFE
1578
+ AS ' json_path_query_array' ;
1579
+
1580
+ CREATE OR REPLACE FUNCTION
1581
+ json_path_query_first(target json, path jsonpath, vars json DEFAULT ' {}' ,
1582
+ silent boolean DEFAULT false)
1583
+ RETURNS json
1584
+ LANGUAGE INTERNAL
1585
+ STRICT IMMUTABLE PARALLEL SAFE
1586
+ AS ' json_path_query_first' ;
1587
+
1588
+ CREATE OR REPLACE FUNCTION
1589
+ json_path_exists_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1590
+ silent boolean DEFAULT false)
1591
+ RETURNS boolean
1592
+ LANGUAGE INTERNAL
1593
+ STRICT STABLE PARALLEL SAFE
1594
+ AS ' json_path_exists_tz' ;
1595
+
1596
+ CREATE OR REPLACE FUNCTION
1597
+ json_path_match_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1598
+ silent boolean DEFAULT false)
1599
+ RETURNS boolean
1600
+ LANGUAGE INTERNAL
1601
+ STRICT STABLE PARALLEL SAFE
1602
+ AS ' json_path_match_tz' ;
1603
+
1604
+ CREATE OR REPLACE FUNCTION
1605
+ json_path_query_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1606
+ silent boolean DEFAULT false)
1607
+ RETURNS SETOF json
1608
+ LANGUAGE INTERNAL
1609
+ STRICT STABLE PARALLEL SAFE
1610
+ AS ' json_path_query_tz' ;
1611
+
1612
+ CREATE OR REPLACE FUNCTION
1613
+ json_path_query_array_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1614
+ silent boolean DEFAULT false)
1615
+ RETURNS json
1616
+ LANGUAGE INTERNAL
1617
+ STRICT STABLE PARALLEL SAFE
1618
+ AS ' json_path_query_array_tz' ;
1619
+
1620
+ CREATE OR REPLACE FUNCTION
1621
+ json_path_query_first_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1622
+ silent boolean DEFAULT false)
1623
+ RETURNS json
1624
+ LANGUAGE INTERNAL
1625
+ STRICT STABLE PARALLEL SAFE
1626
+ AS ' json_path_query_first_tz' ;
1627
+
1628
+
1531
1629
-- default normalization form is NFC, per SQL standard
1532
1630
CREATE OR REPLACE FUNCTION
1533
1631
" normalize" (text , text DEFAULT ' NFC' )
0 commit comments