]> granicus.if.org Git - postgresql/commitdiff
Improve documentation for array subscription in jsonpath
authorAlexander Korotkov <akorotkov@postgresql.org>
Fri, 17 May 2019 02:47:53 +0000 (05:47 +0300)
committerAlexander Korotkov <akorotkov@postgresql.org>
Sun, 19 May 2019 04:43:19 +0000 (07:43 +0300)
Usage of expressions and multiple ranges in jsonpath array subscription was
undocumented.  This commit adds lacking documentation.

doc/src/sgml/json.sgml

index fae137439843bdfbd2f5c01118c238e475c45303..b8246badda9b402bab06482a0e83144a63e5d2fe 100644 (file)
@@ -836,17 +836,22 @@ SELECT jdoc-&gt;'guid', jdoc-&gt;'name' FROM api WHERE jdoc @&gt; '{"tags": ["qu
        <para>
         <literal>[<replaceable>subscript</replaceable>, ...]</literal>
        </para>
-       <para>
-        <literal>[<replaceable>subscript</replaceable> to last]</literal>
-       </para>
       </entry>
       <entry>
        <para>
-        Array element accessor. The provided numeric subscripts return the
-        corresponding array elements. The first element in an array is
-        accessed with [0]. The <literal>last</literal> keyword denotes
-        the last subscript in an array and can be used to handle arrays
-        of unknown length.
+        Array element accessor.  <literal><replaceable>subscript</replaceable></literal>
+        might be given in two forms: <literal><replaceable>expr</replaceable></literal>
+        or <literal><replaceable>lower_expr</replaceable> to <replaceable>upper_expr</replaceable></literal>.
+        The first form specifies single array element by its index.  The second
+        form specified array slice by the range of indexes.  Zero index
+        corresponds to the first array element.
+       </para>
+       <para>
+        Expression inside subscript may consititue an integer,
+        numeric expression or any other <literal>jsonpath</literal> expression
+        returning single numeric value.  The <literal>last</literal> keyword
+        can be used in the expression denoting the last subscript in an array.
+        That's helpful for handling arrays of unknown length.
        </para>
       </entry>
      </row>