mysql5.6 以前のデータベースで json をクエリする方法

mysql5.6 以前のデータベースで json をクエリする方法

MySQLにデータを保存するとき、乱雑であまり使用されないデータがJSONフィールドに投げ込まれることがあります。

MySQL が JSON を保存するときに注意すべき形式について説明します。

1: 保存時に中国語のテキストをトランスコードしないように注意してください。トランスコードするとクエリが非常に面倒になります。圧縮するときに、最後に追加のパラメータを追加すると、より便利になります。

json_encode(配列(),JSON_UNESCAPED_UNICODE);

利点: この方法で検索すると、中国語の文字がよりよく一致する

2: フィールドを統一する。保存時にフィールド名を決めるのがベストです。一人で大きなプロジェクトを開発するのは不可能です。フィールドを統一することで、フィールドの不一致による不要なトラブルやバグを大幅に減らすことができます(私はこれで損をしたことがありますが、プロジェクトをみんなでやるときに考えていなかったため、急いでいたためにその後のテストや修正に開発よりも時間がかかってしまいました)

メリット: クエリデータのコード処理量を削減し、プロジェクトページの表示バグを削減します。

3: 1次元配列を保存できる場合は、2次元配列を保存しないでください。

理由: 2 次元配列は制御不能です。これは、依然として需要に基づいています。

個人的な癖です。とにかくこれが私の癖です、ハハハ。不満なら私を殴ってもいいですよ!

では本題に入りましょう。もちろん、クエリでは次のように使用します。

たとえば、テーブルにコンテンツ フィールドがあるとします。ここで、actid が 123456789 であるコンテンツ フィールドを見つける必要があります。

5.7: テーブルから * を選択します where content->'$.actid' like '%123456789%';
5.6: '%"actid":"123456789"%' のような内容のテーブルから * を選択します

これは一目でわかるはずです。教育は間違いなくフルセットであり、ヘルスケアでもあります。そのため、コードの中には、どのように使用するかを言う人もいます

$id = "123456789";
$sql="'%\"actid":\""$id"\"%\' のような内容のテーブルから * を選択します";

上記は、MySQL 5.6 以前のデータベースで JSON をクエリする方法について紹介したものです。お役に立てば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • MySql ファジークエリ JSON キーワード取得ソリューションの例
  • Mysql クエリの結果セットを JSON データに変換するサンプル コード
  • MySQL で JSON 形式のフィールドをクエリする詳細な説明
  • MySQL json 形式のデータクエリ操作
  • MysqlクエリJSON結果に関連する関数の概要
  • MySQL フルテキスト インデックス、ジョイント インデックス、Like クエリ、JSON クエリのうち、どれが高速ですか?
  • MySQL クエリ フィールド タイプが json の場合の 2 つのクエリ メソッド
  • Python クエリ mysql、json インスタンスを返す
  • Mysqlは保存されたJSON文字列内のデータを直接クエリします

<<:  Vueはechartsを使用して組織図を描画します

>>:  Docker で複数の MySQL コンテナを作成して実行する方法の例

推薦する

ポップアップウィンドウの上下中央左右と透明な背景のロックウィンドウ効果を実現する CSS

クリック後にポップアップボックスを実現し、上下左右に中央揃えし、灰色の透明マスクを追加してウィンドウ...

異なる列を持つテーブルのクエリ結果のSQLマージ操作

2 つの異なるテーブルをクエリするには、結果をマージする必要があります。たとえば、table1 の列...

Macシステムをインストールした後にVMWareがフルスクリーンで表示できない問題を解決する

システム: VMTOOLs ダウンロード:リンク: https://pan.baidu.com/s/...

ウェブページを作成する際に注意すべき点

--ホームページのバックアップ1.txtテキスト2. 画像をスキャンする3. PSDデザイン原画(A...

ウェブページ入力ボックスのスタイルトリガー効果

<br />この例では、主に onblur と onFocus という 2 つのパラメー...

WeChatミニプログラムはどのようにしてユーザー情報とユーザーの電話番号を同時に取得するのか

今日ログインページを書いていたとき、個人情報と携帯電話番号を認証する必要がありましたが、ページにボタ...

Vueがビデオアップロード機能を実装

この記事では、参考までに、ビデオアップロード機能を実現するためのVueの具体的なコードを紹介します。...

Alibaba Cloud ECSインスタンスのユーザールートパスワードとリモート接続方法を設定する方法

Alibaba Cloud サーバーを購入した後、新しいインスタンスが正常に動作できるようにするには...

1 分で Nginx のバージョンをスムーズにアップグレードおよびロールバックする方法

今日は、企業の実際の本番環境でよく遭遇する、Nginx を新しいバージョンにアップグレードし、古いバ...

Antd+vueは円形属性フォームの動的検証のアイデアを実現します

必要な項目をループして検証するために、クエリ フォームのいくつかのプロパティを実装したいと考えていま...

React+Typescriptはカウントダウンフックメソッドを実装します

まず、setIntervalはフックとしてカプセル化されます👇 'react' から...

JavaScript でプロパティハイジャックを実装する方法 defineProperty

目次序文記述子getとsetの詳細な説明オブジェクトの属性の乗っ取りオブジェクトのすべてのプロパティ...

Centos7 に mysql と mysqlclient をインストールする際に遭遇する落とし穴の概要

1. MySQL Yumリポジトリを追加するMySQL公式サイト>ダウンロード>MySQ...

MySQL が UNION を使用して 2 つのクエリを接続できない理由の詳細な説明

概要連合接続データセットキーワードは、2つのクエリ結果セットを1つに連結し、同一のレコードを除外する...

jsは赤い封筒の順序と量を指定するアルゴリズムを実装します

この記事では、指定された赤い封筒の順序と金額を実装するためのjsの具体的なコードを共有します。具体的...