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 コンテナを作成して実行する方法の例

推薦する

初心者向けの MySQL のインストール方法 (効果が実証済み)

1. ソフトウェアのダウンロードMySQL のダウンロードとインストール:公式サイトのダウンロード...

Vue 開発ガイドの重要な知識の要約

目次概要0. JavaScriptとWeb開発の基礎1. Vueの基本概念Vue コア機能コンポーネ...

Navicat が MySQL に接続するときに発生する 1045 エラーの解決方法

ローカル データベースに接続すると、Navicat for MySQL は以下のように 1045 エ...

CSS はモバイル デバイスで水平スクロール ナビゲーション バーを実装します (PC デバイスにも適用可能)

関数の起源最近、水平スクロール バーを必要とする H5 に取り組んでいました。いくつかのドキュメント...

WindowsにOpenSSHをインストールし、SSHキーを生成してLinuxサーバーにログインします。

SSH の正式名称は Secure SHell です。 SSH を使用すると、送信されるすべてのデ...

CSS 擬似要素::マーカーの詳細な説明

この記事では、CSS ::markerの興味深い疑似要素を紹介します。これを使用すると、テキスト番号...

vue-nuxt ログイン認証の実装

目次導入リンク始めるコードを読み進めてくださいプロキシ設定傍受を要求する異なるプレフィックスを持つイ...

入力要素 [type="file"] を使用する場合のスタイルのカスタマイズとブラウザの互換性の問題に関する議論

この2日間、Baixing.comの筆記試験問題を解いているときに、このような問題に遭遇しました。H...

Docker を使用して ELK ログ システムを構築する例

以下のインストールではすべて、インストール ルート ディレクトリとして ~/ ディレクトリが使用され...

js でショッピングモールのシミュレーションを実現

HTML、CSS、JSフロントエンドを学習中の皆さん、今回はショッピングモールの事例の実装をシェアし...

伝説的な VUE 構文シュガーは何をするのでしょうか?

目次1. 糖衣構文とは何ですか? 2. VUE の構文糖とは何ですか? 1. 最も一般的な構文シュガ...

jsとcssのブロッキング問題の詳細な分析

目次DOMContentLoadedとロードjs ブロッキングとは何ですか? CSS ブロッキングと...

W3C チュートリアル (6): W3C CSS アクティビティ

スタイル シートは、ドキュメントの表示方法、発音方法、または入力方法を記述します。スタイル シートは...

ウェブサイトのパフォーマンスを向上させるために画像を最適化する方法

目次概要画像圧縮とはJPEG/JPG JPGの利点JPGの使用シナリオJPGの欠点MozJPEG を...

VueはGraphVisを使用して無限に拡張された関係グラフを開発します

1. GraphVis 公式サイトにアクセスして、対応する js をダウンロードします。js の新し...