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