ホームページ >データベース >mysql チュートリアル >MySQL クエリ内で JSON データを効率的に検索およびフィルタリングするにはどうすればよいですか?

MySQL クエリ内で JSON データを効率的に検索およびフィルタリングするにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-10 17:51:10451ブラウズ

How Can I Efficiently Search and Filter JSON Data within MySQL Queries?

MySQL クエリでの JSON データ検索

JSON データを含む MySQL のクエリはますます重要になってきています。 JSON (JavaScript Object Notation) は、データ交換に一般的に使用されるテキストベースの形式です。 MySQL に保存されている JSON から特定のデータを効率的に取得するには、特定のクエリの変更が必要です。

そのような変更の 1 つには、キーと値のペアに基づくデータの抽出が含まれます。提供されたクエリ

SELECT  `id` ,  `attribs_json` 
FROM  `products` 
WHERE  `attribs_json` REGEXP  '"1":{"value":[^"3"$]'

は、「1」に等しいキーと「3」に等しくない値を抽出することを目的としています。

MySQL バージョン 5.7 以降 の場合、次のように JSON_EXTRACT() 関数を使用するより簡単なアプローチを採用できます。

SELECT JSON_EXTRACT(name, "$.id") AS name
FROM table
WHERE JSON_EXTRACT(name, "$.id") > 3

このクエリは、「name」列の JSON オブジェクトから「id」値を抽出し、「id」が 3 より大きい結果をフィルタリングします。

包括的な場合MySQL の JSON 検索関数の詳細については、公式 MySQL リファレンス マニュアルを参照してください。 https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html.

以上がMySQL クエリ内で JSON データを効率的に検索およびフィルタリングするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。