1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-06 07:49:08 +03:00
Files
postgres/doc/src/sgml
Tom Lane 15247948cc Fix corner-case behaviors in JSON/JSONB field extraction operators.
Cause the path extraction operators to return their lefthand input,
not NULL, if the path array has no elements.  This seems more consistent
since the case ought to correspond to applying the simple extraction
operator (->) zero times.

Cause other corner cases in field/element/path extraction to return NULL
rather than failing.  This behavior is arguably more useful than throwing
an error, since it allows an expression index using these operators to be
built even when not all values in the column are suitable for the
extraction being indexed.  Moreover, we already had multiple
inconsistencies between the path extraction operators and the simple
extraction operators, as well as inconsistencies between the JSON and
JSONB code paths.  Adopt a uniform rule of returning NULL rather than
throwing an error when the JSON input does not have a structure that
permits the request to be satisfied.

Back-patch to 9.4.  Update the release notes to list this as a behavior
change since 9.3.
2014-08-22 13:18:00 -04:00
..
2014-05-06 21:28:58 -04:00
2014-07-16 22:20:15 -04:00
2014-07-16 22:20:15 -04:00
2013-07-02 20:32:09 -04:00
2014-03-03 16:32:18 -05:00
2014-07-16 22:20:15 -04:00
2014-02-23 21:31:08 -05:00
2014-05-06 21:28:58 -04:00
2013-11-27 11:03:59 +01:00
2014-07-16 22:20:15 -04:00
2014-07-08 23:29:09 -04:00
2014-07-16 22:20:15 -04:00
2014-07-16 22:20:15 -04:00
2014-07-08 14:54:32 -04:00
2014-01-07 16:05:30 -05:00
2014-08-07 20:46:44 -04:00
2014-07-16 22:20:15 -04:00
2014-07-16 22:20:15 -04:00
2014-07-08 23:29:09 -04:00
2014-07-08 23:29:09 -04:00
2014-07-16 22:20:15 -04:00
2014-05-06 21:28:58 -04:00
2014-05-06 21:28:58 -04:00
2014-05-06 21:28:58 -04:00
2014-07-16 22:20:15 -04:00
2014-07-16 22:20:15 -04:00
2014-05-06 21:28:58 -04:00
2014-05-06 21:28:58 -04:00
2014-07-16 22:20:15 -04:00
2014-05-06 21:28:58 -04:00
2014-05-06 21:28:58 -04:00
2014-03-23 02:16:34 -04:00
2014-07-16 22:20:15 -04:00
2014-07-16 22:20:15 -04:00
2014-07-16 22:20:15 -04:00
2014-01-06 21:30:26 -05:00

<!-- doc/src/sgml/README.links -->

Linking within SGML documents can be confusing, so here is a summary:


Intra-document Linking
----------------------

<xref>
	use to get chapter/section number from the title of the target
	link, or xreflabel if defined at the target, or refentrytitle if target
        is a refentry;  has no close tag
	http://www.oasis-open.org/docbook/documentation/reference/html/xref.html

<link>
	use to supply text for the link, requires </link>
	http://www.oasis-open.org/docbook/documentation/reference/html/link.html

linkend=
	controls the target of the link/xref, required

endterm=
	for <xref>, allows the text of the link/xref to be taken from a
	different link target title


External Linking
----------------

<ulink>
	like <link>, but uses a URL (not a document target);  requires
	</ulink>; if no text is specified, the URL appears as the link
	text
	http://www.oasis-open.org/docbook/documentation/reference/html/ulink.html

url=
	used by <ulink> to specify the URL, required


Guidelines
----------

o  If you want to supply text, use <link>, else <xref>
o  Do not use text with <ulink> so the URL appears in printed output
o  Specific nouns like GUC variables, SQL commands, and contrib modules
   usually have xreflabels