mySQLキーワードの実行優先度の説明

mySQLキーワードの実行優先度の説明

以下のように表示されます。

表から

条件

フィールドでグループ化

仮想テーブルとフィールドを作成し、フィールドを集計および追加する

フィルターデータを持つ

明確な

フィールドによる昇順、降順の並べ替え

エントリ数を制限する

リストレコードを選択

まず、データは where 制約に従ってテーブルからメモリにロードされ、where 条件がデータの前に機能し、フィールドに従ってグループ化され、フィールドを含む仮想テーブルがメモリ内に形成されます。

このとき、集計関数がある場合は、まず集計関数が実行され、集計関数フィールドも仮想テーブルに追加されます。次に、レコードのフィルタリングが実行されます。フィルタリングが完了すると、データの重複排除、並べ替え、制限などの操作が行われてから表示されます。

追加知識: MySQLのwhere条件の実行順序は左から右です

以前、この機能に取り組んでいたとき、3 つの条件を md5 で暗号化して文字列フィールド unique_key を取得し、このフィールドを一意のインデックスとして設定しました。検索時にこの一意のインデックスを使用すれば、3 つの条件を個別に検索する必要がなくなります。同時に、replace メソッドを使用して、同じ 3 つの条件でデータが更新された場合、データベースにレコードが 1 つだけ存在するようにします。

後で、リスト クエリではこれらの 3 つの条件を開く必要があることがわかったので、unique_key を where 条件の左側に配置する必要があり、unique_key によるフィルタリングの効率は悪くないことがわかりました。

作成時には、MySQL の最適化のあらゆる側面を考慮する必要があります。

以上が、mySQLキーワードの実行優先順位についての説明です。参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Explainキーワードに基づいてMySQLインデックス機能を最適化する方法
  • mysql 実行プラン ID が空である (UNION キーワード) の詳細な説明
  • jq.ajax+php+mysql でキーワードあいまいクエリを実装する (例の説明)
  • MySQLキーワードDistinctの詳細な紹介
  • OR キーワードを使用した MySql 複数条件クエリ ステートメント

<<:  同期スクロールを実現するための複数のテーブル要素のサンプルコード

>>:  Tomcat イメージをインストールして Docker に Web プロジェクトをデプロイする方法を簡単に説明します。

推薦する

実行中のDockerコンテナのポートマッピングを変更する方法

序文docker run がコンテナを作成して実行するときに、-p を使用してポート マッピング ル...

MySQL の完全バックアップとクイックリカバリ方法

過去 15 日間のデータをバックアップするシンプルな MySQL 完全バックアップ スクリプト。バッ...

uniapp プロジェクトをデスクトップ アプリケーションとしてパッケージ化する方法

Electronのインストール cnpm 電子をインストール -g electron-package...

jsで七夕告白連打の効果を実現、jQueryで連打技術を実現

この記事では、jsとjQueryテクノロジーを使用して告白弾幕を実現する方法を紹介します。具体的な内...

Vueライフサイクルの詳細な説明

目次ライフサイクルを理解する理由ライフサイクルとはライフサイクルフック関数作成され、マウントされたフ...

Nest.js 認証検証方法の例

目次0x0 はじめに0x1 RBAC 実装0x2 クレームベースの承認0x3 統合 CASL 0x4...

Linuxシステムにmsfをインストールするプロセスの詳細な説明

または、インストールプロセスを自分で書き留めてください。私のサーバーシステムはAliyun Linu...

Ubuntu でホームディレクトリを新しいパーティションに移行する詳細なチュートリアル

ユーザーのホーム ディレクトリがどんどん大きくなってきたら、ホーム ディレクトリを新しいパーティショ...

CSS ピックアップ矢印、カタログ、アイコン実装コード

1. CSS その他のアイコンアイコンを作成するには 3 つの方法があります。写真css (小さな矢...

MySQL 8.0.15 のインストールと設定方法のグラフィック チュートリアル (Windows 10 X64)

最近私が学んでいるのは MySQL の知識なので、MySQL をインストールすることが非常に重要です...

jQuery はラブエフェクトをクリックする

この記事では、jQueryのクリック時のラブエフェクトの具体的なコードを参考までに共有します。具体的...

MySQL マスタースレーブステータスチェックの実装

1. AデータベースとBデータベースの同期ステータスを確認する次のコマンドを入力すると多くの情報が表...

CSS の overflow: hidden の使い方 (オーバーフローの非表示とフロートのクリア)

オーバーフロー非表示指定された高さを超えるテキストや画像情報を非表示にすることを意味します。 <...

Vueコンポーネントの詳細な説明

<本文> <div id="ルート"> <h2&...

Zabbixで監視する必要があるホストを追加するための詳細な手順

監視ホストの追加ホスト 192.168.179.104 が zabbix 監視項目に追加されます (...