導入 今日SQLを書いているときに、問題が発生しました。要件は、データを照会し、スコアと過去 1 週間の訪問回数の逆順に並べ替えることです。問題は、従来の書き方では、where 句に day >= xxx 条件を入れることです。一部のデータに過去 1 週間の訪問がない場合、このデータは見つかりません。解決策は、条件を LEFT JOIN に入れることです。 MySQL ステートメントの実行順序 まず最初に概念を説明します。MySQL ステートメントが実行される順序は、SQL ステートメントの順序ではありません。サンプルSQLはこちら 選択する < 選択リスト > から < 左テーブル > < 結合タイプ > JOIN < 右テーブル > ON < 結合条件 > どこ < 条件 > グループ化 < グループリスト > 持つ < 条件がある > 注文する < 順序条件 > LIMIT <制限数> SQLの実行順序は以下のとおりです。 <左テーブル> から ON <結合条件> <結合タイプ> JOIN <右テーブル> WHERE <where_condition> GROUP BY <group_by_list> HAVING <having_condition> 選択 DISTINCT <選択リスト> ORDER BY <order_by_condition> LIMIT <制限数> LEFT JOINの役割 結果セットの違いはSQLの優先順位だけでなく、LEFT JOINにも関係しています。 左結合を使用する場合、on の後の条件は右側のテーブルに対してのみ有効です。
上記は、内容をうまくまとめた 2 つの資料からの抜粋です (元のリンクは下にあり、その中に例文があります)。 参考文献:
要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
<<: Windows オペレーティング システムでの Linux 仮想マシンのインストールと構成のチュートリアル
>>: Vue Element-ui テーブルはツリー構造テーブルを実現します
目次概要問題の説明循環リンクリスト順序付き配列数学的再帰要約する概要ジョセフ・リング問題は、ジョセフ...
入力タイプ「file」とは何ですか?これが何なのかは説明する必要はないと思います。誰もが知っているこ...
特記事項:この記事は、Chris Spooner の英語記事「Web デザイン用の Retina グ...
1. スプレッド演算子スプレッド演算子は 3 つのドット ... で、複数の引数 (関数呼び出しなど...
序文リレーショナル データベースは、システムのボトルネックになる可能性が高くなります。単一のマシンの...
Ubuntu ではデフォルトで root ログインが許可されていないため、初期の root アカウン...
JavaScript ネイティブ コードの記述能力を高め、setTimeout() の使用を強化する...
一言で言えば: データハイジャック (Object.defineProperty) + パブリッシュ...
JavaScriptでのランダムコードの生成と検証は参考までに。具体的な内容は以下のとおりです。イベ...
ブラウザベンダーが標準を曲げて、ルールに従わないことをすると、問題や少なくとも混乱が生じる可能性があ...
この記事のシナリオと組み合わせて、Nginx と Java 環境 (SpringBoot プロジェク...
Nginx の動的および静的分離の概要Nginx は静的処理能力が強力ですが、動的処理能力が不十分で...
vue3.0 への最初の試みを記録します。プロジェクトを開始したときに、「モジュール 'wo...
序文Js は現在最も一般的に使用されているコード操作言語であり、その中でも new 演算子は特によく...
本体の幅をウィンドウの幅に設定します(次のスクリプトで制御されます) $("body&qu...