@@ -1312,6 +1312,14 @@ LANGUAGE INTERNAL
1312
1312
STRICT IMMUTABLE PARALLEL SAFE
1313
1313
AS ' make_interval' ;
1314
1314
1315
+ CREATEOR REPLACE FUNCTION
1316
+ json_set(json_in json,path text [] , replacement json,
1317
+ create_if_missingboolean DEFAULT true)
1318
+ RETURNS json
1319
+ LANGUAGE INTERNAL
1320
+ STRICT IMMUTABLE PARALLEL SAFE
1321
+ AS ' json_set' ;
1322
+
1315
1323
CREATEOR REPLACE FUNCTION
1316
1324
jsonb_set(jsonb_in jsonb,path text [] , replacement jsonb,
1317
1325
create_if_missingboolean DEFAULT true)
@@ -1336,6 +1344,14 @@ LANGUAGE INTERNAL
1336
1344
STRICT IMMUTABLE PARALLEL SAFE
1337
1345
AS ' parse_ident' ;
1338
1346
1347
+ CREATEOR REPLACE FUNCTION
1348
+ json_insert(json_in json,path text [] , replacement json,
1349
+ insert_afterboolean DEFAULT false)
1350
+ RETURNS json
1351
+ LANGUAGE INTERNAL
1352
+ STRICT IMMUTABLE PARALLEL SAFE
1353
+ AS ' json_insert' ;
1354
+
1339
1355
CREATEOR REPLACE FUNCTION
1340
1356
jsonb_insert(jsonb_in jsonb,path text [] , replacement jsonb,
1341
1357
insert_afterboolean DEFAULT false)
@@ -1424,6 +1440,88 @@ LANGUAGE INTERNAL
1424
1440
STRICT STABLE PARALLEL SAFE
1425
1441
AS ' jsonb_path_query_first_tz' ;
1426
1442
1443
+
1444
+ CREATEOR REPLACE FUNCTION
1445
+ json_path_exists(target json,path jsonpath, vars json DEFAULT' {}' ,
1446
+ silentboolean DEFAULT false)
1447
+ RETURNSboolean
1448
+ LANGUAGE INTERNAL
1449
+ STRICT IMMUTABLE PARALLEL SAFE
1450
+ AS ' json_path_exists' ;
1451
+
1452
+ CREATEOR REPLACE FUNCTION
1453
+ json_path_match(target json,path jsonpath, vars json DEFAULT' {}' ,
1454
+ silentboolean DEFAULT false)
1455
+ RETURNSboolean
1456
+ LANGUAGE INTERNAL
1457
+ STRICT IMMUTABLE PARALLEL SAFE
1458
+ AS ' json_path_match' ;
1459
+
1460
+ CREATEOR REPLACE FUNCTION
1461
+ json_path_query(target json,path jsonpath, vars json DEFAULT' {}' ,
1462
+ silentboolean DEFAULT false)
1463
+ RETURNS SETOF json
1464
+ LANGUAGE INTERNAL
1465
+ STRICT IMMUTABLE PARALLEL SAFE
1466
+ AS ' json_path_query' ;
1467
+
1468
+ CREATEOR REPLACE FUNCTION
1469
+ json_path_query_array(target json,path jsonpath, vars json DEFAULT' {}' ,
1470
+ silentboolean DEFAULT false)
1471
+ RETURNS json
1472
+ LANGUAGE INTERNAL
1473
+ STRICT IMMUTABLE PARALLEL SAFE
1474
+ AS ' json_path_query_array' ;
1475
+
1476
+ CREATEOR REPLACE FUNCTION
1477
+ json_path_query_first(target json,path jsonpath, vars json DEFAULT' {}' ,
1478
+ silentboolean DEFAULT false)
1479
+ RETURNS json
1480
+ LANGUAGE INTERNAL
1481
+ STRICT IMMUTABLE PARALLEL SAFE
1482
+ AS ' json_path_query_first' ;
1483
+
1484
+ CREATEOR REPLACE FUNCTION
1485
+ json_path_exists_tz(target json,path jsonpath, vars json DEFAULT' {}' ,
1486
+ silentboolean DEFAULT false)
1487
+ RETURNSboolean
1488
+ LANGUAGE INTERNAL
1489
+ STRICT STABLE PARALLEL SAFE
1490
+ AS ' json_path_exists_tz' ;
1491
+
1492
+ CREATEOR REPLACE FUNCTION
1493
+ json_path_match_tz(target json,path jsonpath, vars json DEFAULT' {}' ,
1494
+ silentboolean DEFAULT false)
1495
+ RETURNSboolean
1496
+ LANGUAGE INTERNAL
1497
+ STRICT STABLE PARALLEL SAFE
1498
+ AS ' json_path_match_tz' ;
1499
+
1500
+ CREATEOR REPLACE FUNCTION
1501
+ json_path_query_tz(target json,path jsonpath, vars json DEFAULT' {}' ,
1502
+ silentboolean DEFAULT false)
1503
+ RETURNS SETOF json
1504
+ LANGUAGE INTERNAL
1505
+ STRICT STABLE PARALLEL SAFE
1506
+ AS ' json_path_query_tz' ;
1507
+
1508
+ CREATEOR REPLACE FUNCTION
1509
+ json_path_query_array_tz(target json,path jsonpath, vars json DEFAULT' {}' ,
1510
+ silentboolean DEFAULT false)
1511
+ RETURNS json
1512
+ LANGUAGE INTERNAL
1513
+ STRICT STABLE PARALLEL SAFE
1514
+ AS ' json_path_query_array_tz' ;
1515
+
1516
+ CREATEOR REPLACE FUNCTION
1517
+ json_path_query_first_tz(target json,path jsonpath, vars json DEFAULT' {}' ,
1518
+ silentboolean DEFAULT false)
1519
+ RETURNS json
1520
+ LANGUAGE INTERNAL
1521
+ STRICT STABLE PARALLEL SAFE
1522
+ AS ' json_path_query_first_tz' ;
1523
+
1524
+
1427
1525
-- default normalization form is NFC, per SQL standard
1428
1526
CREATEOR REPLACE FUNCTION
1429
1527
" normalize" (text ,text DEFAULT' NFC' )