簡體   English   中英

MySQL正則表達式搜索JSON數組

[英]MySQL regexp search JSON array

我將 json 數據存儲到表中的一個字段,但在使用 REGEXP 返回正確條目時遇到問題 基本上,它與 JSON 對象中的其他屬性匹配,它不應該

示例 JSON

    {
  "data": {
    "en": {
      "containers": [
        {
          "id": 1441530944931,
          "template": "12",
          "columns": {
            "column1": [
              "144",
              "145",
              "148"
            ],
            "column2":[
                "135",
                "148",
                "234"
            ]
          }
        }
      ],
      "left": "152",
      "right": "151"
    },

  }
}

現在,我想針對特定值(即 148)搜索列數組

現在我有以下查詢

WHERE (w.`_attrs` REGEXP '"column[0-9]":.*\\[.*"148".*\\]'

它工作得很好但是,如果我將值改為從148到152或者151,它也可以出於某種原因,查詢匹配屬性,為好,但這樣做是不可取

有什么幫助嗎?

謝謝

或者...切換到 MariaDB 10 並索引 JSON 的組件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM