Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 10.2.6
    • 10.2.10
    • JSON
    • None

    Description

      MariaDB 10.2

       
      MariaDB [test]> SELECT JSON_CONTAINS('[{"a":"b"},{"c":"d"}]','{"c":"d"}');
      +------------------------------------------------+ 
      | JSON_CONTAINS('[{"a":"b"},{"c":"d"}]','{"c":"d"}') | 
      +------------------------------------------------+ 
      | 0 | 
      +------------------------------------------------+ 
      1 row in set (0.00 sec) 
      

      MySQL 5.7

       
      MySQL [test]> SELECT JSON_CONTAINS('[{"a":"b"},{"c":"d"}]','{"c":"d"}');
      +------------------------------------------------+ 
      | JSON_CONTAINS('[{"a":"b"},{"c":"d"}]','{"c":"d"}') | 
      +------------------------------------------------+ 
      | 1 | 
      +------------------------------------------------+ 
      1 row in set (0.00 sec) 
      

      Attachments

        Activity

          alice Alice Sherepa added a comment - - edited

          confirmed on 10.2 and 10.3.
          From mysql documentation: "A candidate nonarray is contained in a target array if and only if the candidate is contained in some element of the target. "
          Also if object is on the first place in array, then function returns 1.

          MariaDB [test]> select JSON_CONTAINS('[{"c":"d"},{"a":"b"}]','{"c":"d"}');
          +----------------------------------------------------+
          | JSON_CONTAINS('[{"c":"d"},{"a":"b"}]','{"c":"d"}') |
          +----------------------------------------------------+
          |                                                  1 |
          +----------------------------------------------------+
          1 row in set (0.00 sec)
          

          alice Alice Sherepa added a comment - - edited confirmed on 10.2 and 10.3. From mysql documentation: "A candidate nonarray is contained in a target array if and only if the candidate is contained in some element of the target. " Also if object is on the first place in array, then function returns 1. MariaDB [test]> select JSON_CONTAINS( '[{"c":"d"},{"a":"b"}]' , '{"c":"d"}' ); + ----------------------------------------------------+ | JSON_CONTAINS( '[{"c":"d"},{"a":"b"}]' , '{"c":"d"}' ) | + ----------------------------------------------------+ | 1 | + ----------------------------------------------------+ 1 row in set (0.00 sec)
          dplewis Diamond Lewis added a comment -

          Hello, Just wondering if this issue has been fixed in another issue?

          Thanks.

          dplewis Diamond Lewis added a comment - Hello, Just wondering if this issue has been fixed in another issue? Thanks.
          holyfoot Alexey Botchkov added a comment - http://lists.askmonty.org/pipermail/commits/2017-October/011524.html
          dplewis Diamond Lewis added a comment -

          Thanks a lot!

          dplewis Diamond Lewis added a comment - Thanks a lot!

          People

            holyfoot Alexey Botchkov
            dplewis Diamond Lewis
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.