「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > WHERE 句を使用して MySQL で JSON データをクエリするにはどうすればよいですか?

WHERE 句を使用して MySQL で JSON データをクエリするにはどうすればよいですか?

2024 年 12 月 22 日に公開
ブラウズ:351

How to Query JSON Data in MySQL using the WHERE Clause?

MySQL で JSON データをクエリする方法

MySQL データベースでは、JSON オブジェクトをテーブル列内に格納できます。ただし、これらの JSON フィールドを利用するクエリの実行は、適切なテクニックがなければ困難になる可能性があります。このガイドでは、WHERE 句を使用して JSON データを簡単にクエリする方法を提供し、開発者が JSON オブジェクトのプロパティに基づいて特定のレコードをフィルタリングして取得できるようにします。

JSON_EXTRACT 関数の使用

For MySQL バージョン 5.7 以降では、JSON_EXTRACT 関数は、WHERE 句内の JSON オブジェクトから特定の値を抽出するための効果的なツールです。この関数は 2 つのパラメータを取ります:

  • json_document: 値の抽出元の JSON オブジェクト。
  • path: JSONオブジェクト内のターゲット値の場所を指定するパス式。

元の問い合わせで提供されたテーブルの例を考えてみましょう。 JSON オブジェクトを含む列「json_data」。 「title」プロパティに文字列「CPU」が含まれる行をテーブルでクエリするには、次のクエリを使用できます:

SELECT user_id, json_data
FROM articles
WHERE JSON_EXTRACT(json_data, '$.title') LIKE '%CPU%';

このクエリは、JSON_EXTRACT 関数を利用して、「json_data」列の各 JSON オブジェクトから「title」プロパティの値を取得します。 。次に、結果をフィルタリングして、抽出されたタイトル値に指定された部分文字列が含まれる行のみを含めます。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3