Speaking of JSON functions, JOOQ creator Lukas Eder has been giving JSON functions in MySQL/MariaDB a good workout over the last few days. It’s amusing to read what he has discovered: https://twitter.com/lukaseder <https://twitter.com/lukaseder>
Julian > On Apr 20, 2020, at 8:27 AM, Stamatis Zampetakis <[email protected]> wrote: > > Hi, > > I know that Oracle uses lax by default [1] but I don't remember what other > DBMS do. > > In any case adopting a default mode sounds like a reasonable thing to do. > > Best, > Stamatis > > [1] https://docs.oracle.com/database/121/ADXDB/json.htm#ADXDB6259 > > > On Mon, Apr 20, 2020, 7:28 AM Chunwei Lei <[email protected]> wrote: > >> Thank you for proposing this, Forward. >> >> I am wondering whether it is really useful for users who want to use these >> functions >> since they probably know what the syntax is. But personally I would like to >> have the >> default mode since it is more convenient. >> >> >> Best, >> Chunwei >> >> >> On Sun, Apr 19, 2020 at 9:51 AM Forward Xu <[email protected]> wrote: >> >>> hi everyone, I recently found some discussable optimizations when I >>> contributed the flip-90 [1] Json functions: >>> The current json functions in calcite: JSON_EXISTS, JSON_VALUE, >> JSON_QUERY, >>> JSON_OBJECT, JSON_OBJECTAGG, JSON_ARRAY, JSON_ARRAYAGG and IS JSON >>> predication functions. These functions are implemented based on the SQL >>> 2016-2017 standard [2]. According to this standard, the path of the json >>> function must be used in one of strict or lax mode. such as: >>> json_exists ('{"foo": "bar"}', 'lax $ .foo') or >>> json_exists ('{"foo": "bar"}', 'strict $ .foo') >>> Can we give a default mode to simplify the use of lax and strict. For >>> example, we default to lax mode. In this way, the use of our json >> function >>> can be simplified to: >>> json_exists ('{"foo": "bar"}', '$ .foo') >>> Implementation idea improvement JsonFunctions jsonApiCommonSyntax path >>> judgment to increase the default lax mode logic. >>> Of course, these changes are not described in SQL2016-2017. >>> I want to hear your opinion here. >>> >>> [1] >>> >> https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=141724550 >>> [2] >>> >>> >> https://standards.iso.org/ittf/PubliclyAvailableStandards/c067367_ISO_IEC_TR_19075-6_2017.zip >>> >>
