forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit33a3776
committed
IS JSON predicate
This patch intrdocuces the SQL standard IS JSON predicate. It operateson text and bytea values representing JSON as well as on the json andjsonb types. Each test has an IS and IS NOT variant. The tests are:IS JSON [VALUE]IS JSON ARRAYIS JSON OBJECTIS JSON SCALARIS JSON WITH | WITHOUT UNIQUE KEYSThese are mostly self-explanatory, but note that IS JSON WITHOUT UNIQUEKEYS is true whenever IS JSON is true, and IS JSON WITH UNIQUE KEYS istrue whenever IS JSON is true except it IS JSON OBJECT is true and thereare duplicate keys (which is never the case when applied to jsonb values).Nikita GlukhovReviewers have included (in no particular order) Andres Freund, AlexanderKorotkov, Pavel Stehule, Andrew Alsup, Erik Rijkers, Zihong Yu,Himanshu Upadhyaya, Daniel Gustafsson, Justin Pryzby.Discussion:https://postgr.es/m/cd0bb935-0158-78a7-08b5-904886deac4b@postgrespro.ru1 parent6198420 commit33a3776
File tree
25 files changed
+856
-17
lines changed- src
- backend
- executor
- jit/llvm
- nodes
- parser
- utils
- adt
- misc
- include
- executor
- nodes
- parser
- utils
- test/regress
- expected
- sql
25 files changed
+856
-17
lines changedLines changed: 13 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2513 | 2513 |
| |
2514 | 2514 |
| |
2515 | 2515 |
| |
| 2516 | + | |
| 2517 | + | |
| 2518 | + | |
| 2519 | + | |
| 2520 | + | |
| 2521 | + | |
| 2522 | + | |
| 2523 | + | |
| 2524 | + | |
| 2525 | + | |
| 2526 | + | |
| 2527 | + | |
| 2528 | + | |
2516 | 2529 |
| |
2517 | 2530 |
| |
2518 | 2531 |
| |
|
Lines changed: 95 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
73 | 73 |
| |
74 | 74 |
| |
75 | 75 |
| |
| 76 | + | |
76 | 77 |
| |
77 | 78 |
| |
78 | 79 |
| |
| |||
480 | 481 |
| |
481 | 482 |
| |
482 | 483 |
| |
| 484 | + | |
483 | 485 |
| |
484 | 486 |
| |
485 | 487 |
| |
| |||
1799 | 1801 |
| |
1800 | 1802 |
| |
1801 | 1803 |
| |
| 1804 | + | |
| 1805 | + | |
| 1806 | + | |
| 1807 | + | |
| 1808 | + | |
| 1809 | + | |
| 1810 | + | |
| 1811 | + | |
1802 | 1812 |
| |
1803 | 1813 |
| |
1804 | 1814 |
| |
| |||
3909 | 3919 |
| |
3910 | 3920 |
| |
3911 | 3921 |
| |
| 3922 | + | |
| 3923 | + | |
| 3924 | + | |
| 3925 | + | |
| 3926 | + | |
| 3927 | + | |
| 3928 | + | |
| 3929 | + | |
| 3930 | + | |
| 3931 | + | |
| 3932 | + | |
| 3933 | + | |
| 3934 | + | |
| 3935 | + | |
| 3936 | + | |
| 3937 | + | |
| 3938 | + | |
| 3939 | + | |
| 3940 | + | |
| 3941 | + | |
| 3942 | + | |
| 3943 | + | |
| 3944 | + | |
| 3945 | + | |
| 3946 | + | |
| 3947 | + | |
| 3948 | + | |
| 3949 | + | |
| 3950 | + | |
| 3951 | + | |
| 3952 | + | |
| 3953 | + | |
| 3954 | + | |
| 3955 | + | |
| 3956 | + | |
| 3957 | + | |
| 3958 | + | |
| 3959 | + | |
| 3960 | + | |
| 3961 | + | |
| 3962 | + | |
| 3963 | + | |
| 3964 | + | |
| 3965 | + | |
| 3966 | + | |
| 3967 | + | |
| 3968 | + | |
| 3969 | + | |
| 3970 | + | |
| 3971 | + | |
| 3972 | + | |
| 3973 | + | |
| 3974 | + | |
| 3975 | + | |
| 3976 | + | |
| 3977 | + | |
| 3978 | + | |
| 3979 | + | |
| 3980 | + | |
| 3981 | + | |
| 3982 | + | |
| 3983 | + | |
| 3984 | + | |
| 3985 | + | |
| 3986 | + | |
| 3987 | + | |
| 3988 | + | |
| 3989 | + | |
| 3990 | + | |
| 3991 | + | |
| 3992 | + | |
| 3993 | + | |
| 3994 | + | |
| 3995 | + | |
| 3996 | + | |
| 3997 | + | |
| 3998 | + | |
| 3999 | + | |
| 4000 | + | |
| 4001 | + | |
| 4002 | + | |
| 4003 | + | |
| 4004 | + | |
| 4005 | + | |
| 4006 | + | |
3912 | 4007 |
| |
3913 | 4008 |
| |
3914 | 4009 |
| |
|
Lines changed: 6 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2354 | 2354 |
| |
2355 | 2355 |
| |
2356 | 2356 |
| |
| 2357 | + | |
| 2358 | + | |
| 2359 | + | |
| 2360 | + | |
| 2361 | + | |
| 2362 | + | |
2357 | 2363 |
| |
2358 | 2364 |
| |
2359 | 2365 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
132 | 132 |
| |
133 | 133 |
| |
134 | 134 |
| |
| 135 | + | |
135 | 136 |
| |
136 | 137 |
| |
137 | 138 |
| |
|
Lines changed: 20 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2491 | 2491 |
| |
2492 | 2492 |
| |
2493 | 2493 |
| |
| 2494 | + | |
| 2495 | + | |
| 2496 | + | |
| 2497 | + | |
| 2498 | + | |
| 2499 | + | |
| 2500 | + | |
| 2501 | + | |
| 2502 | + | |
| 2503 | + | |
| 2504 | + | |
| 2505 | + | |
| 2506 | + | |
| 2507 | + | |
| 2508 | + | |
| 2509 | + | |
| 2510 | + | |
2494 | 2511 |
| |
2495 | 2512 |
| |
2496 | 2513 |
| |
| |||
5625 | 5642 |
| |
5626 | 5643 |
| |
5627 | 5644 |
| |
| 5645 | + | |
| 5646 | + | |
| 5647 | + | |
5628 | 5648 |
| |
5629 | 5649 |
| |
5630 | 5650 |
| |
|
Lines changed: 15 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
976 | 976 |
| |
977 | 977 |
| |
978 | 978 |
| |
| 979 | + | |
| 980 | + | |
| 981 | + | |
| 982 | + | |
| 983 | + | |
| 984 | + | |
| 985 | + | |
| 986 | + | |
| 987 | + | |
| 988 | + | |
| 989 | + | |
| 990 | + | |
979 | 991 |
| |
980 | 992 |
| |
981 | 993 |
| |
| |||
3546 | 3558 |
| |
3547 | 3559 |
| |
3548 | 3560 |
| |
| 3561 | + | |
| 3562 | + | |
| 3563 | + | |
3549 | 3564 |
| |
3550 | 3565 |
| |
3551 | 3566 |
| |
|
Lines changed: 19 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
887 | 887 |
| |
888 | 888 |
| |
889 | 889 |
| |
| 890 | + | |
| 891 | + | |
| 892 | + | |
| 893 | + | |
| 894 | + | |
| 895 | + | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + |
Lines changed: 26 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
260 | 260 |
| |
261 | 261 |
| |
262 | 262 |
| |
| 263 | + | |
| 264 | + | |
| 265 | + | |
263 | 266 |
| |
264 | 267 |
| |
265 | 268 |
| |
| |||
985 | 988 |
| |
986 | 989 |
| |
987 | 990 |
| |
| 991 | + | |
| 992 | + | |
| 993 | + | |
988 | 994 |
| |
989 | 995 |
| |
990 | 996 |
| |
| |||
1211 | 1217 |
| |
1212 | 1218 |
| |
1213 | 1219 |
| |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
1214 | 1223 |
| |
1215 | 1224 |
| |
1216 | 1225 |
| |
| |||
1663 | 1672 |
| |
1664 | 1673 |
| |
1665 | 1674 |
| |
| 1675 | + | |
| 1676 | + | |
| 1677 | + | |
1666 | 1678 |
| |
1667 | 1679 |
| |
1668 | 1680 |
| |
| |||
2429 | 2441 |
| |
2430 | 2442 |
| |
2431 | 2443 |
| |
| 2444 | + | |
| 2445 | + | |
2432 | 2446 |
| |
2433 | 2447 |
| |
2434 | 2448 |
| |
| |||
3438 | 3452 |
| |
3439 | 3453 |
| |
3440 | 3454 |
| |
| 3455 | + | |
| 3456 | + | |
| 3457 | + | |
| 3458 | + | |
| 3459 | + | |
| 3460 | + | |
| 3461 | + | |
| 3462 | + | |
| 3463 | + | |
| 3464 | + | |
3441 | 3465 |
| |
3442 | 3466 |
| |
3443 | 3467 |
| |
| |||
4290 | 4314 |
| |
4291 | 4315 |
| |
4292 | 4316 |
| |
| 4317 | + | |
| 4318 | + | |
4293 | 4319 |
| |
4294 | 4320 |
| |
4295 | 4321 |
| |
|
Lines changed: 14 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1797 | 1797 |
| |
1798 | 1798 |
| |
1799 | 1799 |
| |
| 1800 | + | |
| 1801 | + | |
| 1802 | + | |
| 1803 | + | |
| 1804 | + | |
| 1805 | + | |
| 1806 | + | |
| 1807 | + | |
| 1808 | + | |
| 1809 | + | |
| 1810 | + | |
1800 | 1811 |
| |
1801 | 1812 |
| |
1802 | 1813 |
| |
| |||
4630 | 4641 |
| |
4631 | 4642 |
| |
4632 | 4643 |
| |
| 4644 | + | |
| 4645 | + | |
| 4646 | + | |
4633 | 4647 |
| |
4634 | 4648 |
| |
4635 | 4649 |
| |
|
Lines changed: 18 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1492 | 1492 |
| |
1493 | 1493 |
| |
1494 | 1494 |
| |
| 1495 | + | |
| 1496 | + | |
| 1497 | + | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
| 1510 | + | |
1495 | 1511 |
| |
1496 | 1512 |
| |
1497 | 1513 |
| |
| |||
3090 | 3106 |
| |
3091 | 3107 |
| |
3092 | 3108 |
| |
| 3109 | + | |
| 3110 | + | |
3093 | 3111 |
| |
3094 | 3112 |
| |
3095 | 3113 |
| |
|
0 commit comments
Comments
(0)