@@ -525,13 +525,15 @@ set time zone default;
525525
526526SELECT jsonb_path_query(' [{"a": 1}, {"a": 2}]' , ' $[*]' );
527527SELECT jsonb_path_query(' [{"a": 1}, {"a": 2}]' , ' $[*] ? (@.a > 10)' );
528+ SELECT jsonb_path_query(' [{"a": 1}, {"a": 2}]' , ' pg [$[*].a]' );
528529
529530SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}, {}]' , ' strict $[*].a' );
530531SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}]' , ' $[*].a' );
531532SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}]' , ' $[*].a ? (@ == 1)' );
532533SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}]' , ' $[*].a ? (@ > 10)' );
533534SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}, {"a": 3}, {"a": 5}]' , ' $[*].a ? (@ > $min && @ < $max)' , vars => ' {"min": 1, "max": 4}' );
534535SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}, {"a": 3}, {"a": 5}]' , ' $[*].a ? (@ > $min && @ < $max)' , vars => ' {"min": 3, "max": 4}' );
536+ SELECT jsonb_path_query_array(' [{"a": 1}, {"a": 2}]' , ' pg [$[*].a]' );
535537
536538SELECT jsonb_path_query_first(' [{"a": 1}, {"a": 2}, {}]' , ' strict $[*].a' );
537539SELECT jsonb_path_query_first(' [{"a": 1}, {"a": 2}, {}]' , ' strict $[*].a' , silent => true);
@@ -587,3 +589,12 @@ select jsonb_path_query('[1,2,3,4,5]', 'pg -(10, 20, $[1 to 3], 30)');
587589select jsonb_path_query(' [1,2,3,4,5]' , ' pg lax (10, 20.5, $[1 to 3], "30").double()' );
588590select jsonb_path_query(' [1,2,3,4,5]' , ' pg $[(0, $[*], 5) ? (@ == 3)]' );
589591select jsonb_path_query(' [1,2,3,4,5]' , ' pg $[(0, $[*], 3) ? (@ == 3)]' );
592+
593+ -- extension: array constructors
594+ select jsonb_path_query(' [1, 2, 3]' , ' pg []' );
595+ select jsonb_path_query(' [1, 2, 3]' , ' pg [1, 2, $[*], 4, 5]' );
596+ select jsonb_path_query(' [1, 2, 3]' , ' pg [1, 2, $[*], 4, 5][*]' );
597+ select jsonb_path_query(' [1, 2, 3]' , ' pg [(1, (2, $[*])), (4, 5)]' );
598+ select jsonb_path_query(' [1, 2, 3]' , ' pg [[1, 2], [$[*], 4], 5, [(1,2)?(@ > 5)]]' );
599+ select jsonb_path_query(' [1, 2, 3]' , ' pg strict [1, 2, $[*].a, 4, 5]' );
600+ select jsonb_path_query(' [[1, 2], [3, 4, 5], [], [6, 7]]' , ' pg [$[*][*] ? (@ > 3)]' );
0 commit comments