序文 2 つのテーブル内の同じフィールドの型が異なっていたり、エンコード タイプが異なっていたりするため、クエリではインデックスが使用されず、速度が非常に遅くなります。 強制移送 直接的な例を挙げてみましょう。 テーブルIDはint型、テーブルIDはchar型です intに変換する場合は符号付き charに変換する場合はchar 注意: 変換するタイプは、左結合後のテーブルのフィールドである必要があります。そうでない場合、インデックスは使用されません。 結合テーブルのフィールド タイプが不一致であるため、インデックスは使用されません。 A から t.* を選択し、B t1 を t.id = t1.id で結合します。 最初の変換タイプ A から t.* を選択し、B t1 を t.id に結合します = cast(t1.id を署名済みとして) 2番目の変換タイプ A から t.* を選択し、B t1 を t.id に結合します = convert(t1.id, signed) アブ=fg しかし、2 つのフィールド b と g には異なるソート規則があります。b は utf8_general_ci、g は utf8_unicode_ci です。これらが等しい場合、SQL はエラーを報告します。そこで、上司に助けを求めました。書き方は次のとおりです。 変換 (utf8 を使用) COLLATE utf8_unicode_ci = fg テーブルにインデックスが付けられていない場合、フィールドはクエリ内で変換されます。例: a.*からaを選択 LEFT JOIN (SELECT b.*, CONVERT (ab USING utf8) COLLATE utf8_unicode_ci = fg FROM b) a ON ab = fg CONVERT(user_id USING utf8) COLLATE utf8_general_ci as user_id MYSQL 文字列変換に関するこの記事はこれで終わりです。MYSQL 文字列変換の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: 4つのReactコンポーネントにおけるDOMスタイル設定の詳細な説明
>>: Dockerは元のタグのイメージの再タグ付けと削除を実装します
Nginxのアクセス制限設定とはNginx のアクセス制限は、IP ベースのアクセス制御とユーザーベ...
目次私たちが毎日実行している Linux システムとは何でしょうか? LinuxカーネルとGNUシス...
グリッドシステムの形成1692年、新しく即位したフランス国王ルイ14世は、フランスの印刷技術のレベル...
MySQL ページング分析の原理と効率改善PERCONA PERFORMANCE CONFERENC...
序文binlog は、MySQL のすべての追加、削除、および変更ステートメントを記録するバイナリ ...
目次クエリの背景1. クエリをいいね2. JSON関数クエリ3. 共同インデックスクエリ4. 全文イ...
この記事では、Vue開発ツリー構造コンポーネントの具体的なコードを例として紹介します。具体的な内容は...
この記事では、Centos7.4 環境に lamp-php7.0 をインストールする方法について説明...
最近、shake.jsを使用して、shakeに似た機能を作成しました。ただし、shake機能はios...
最近、MySQL を学び始めました。インストールはスムーズに進み、インターネット上の既成のチュートリ...
目次1. ユーザーとユーザーグループの重要性1) ユーザーの存在意義2) ユーザーグループの重要性2...
目次1. はじめに2. ルール検証の入力モード2.1 サンプルコード2.2、フォーム項目2.3. 小...
ページコンテンツ全体を中央に配置する方法と、コンテンツに合わせて高さを自動的に拡大縮小する方法。これ...
目次DockerバージョンCentOS に Docker エンジンをインストールするシステム要件古い...
Vue プロジェクトで mock.js を使用する開発ツールの選択: Vscode 1. コマンドラ...