On Tue, Mar 5, 2024 at 12:38 PM Andy Fan <zhihuifan1...@163.com> wrote: > > > In the commit message of 0001, we have: > > """ > Both JSON_VALUE() and JSON_QUERY() functions have options for > handling EMPTY and ERROR conditions, which can be used to specify > the behavior when no values are matched and when an error occurs > during evaluation, respectively. > > All of these functions only operate on jsonb values. The workaround > for now is to cast the argument to jsonb. > """ > > which is not clear for me why we introduce JSON_VALUE() function, is it > for handling EMPTY or ERROR conditions? I think the existing cast > workaround have a similar capacity? >
I guess because it's in the standard. but I don't see individual sql standard Identifier, JSON_VALUE in sql_features.txt I do see JSON_QUERY. mysql also have JSON_VALUE, [1] EMPTY, ERROR: there is a standard Identifier: T825: SQL/JSON: ON EMPTY and ON ERROR clauses [1] https://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html#function_json-value