導入 今日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 テーブルはツリー構造テーブルを実現します
async_hooks モジュールは、Node.js バージョン 8.0.0 に正式に追加された実験...
この記事では、VMware Workstation Pro で Win10 オペレーティング システ...
目次1. ヘルプコマンド2. ミラーコマンド3. コンテナコマンド1. ヘルプコマンド1. 現在のD...
プロジェクトの作業を開始するときは、ワイヤーフレームを使用してアイデアをスケッチすることが重要です。...
要素フォームとコード表示詳細はエレメントフォーム公式サイトをご覧ください構造と機能の分析紹介とソース...
1. Dockerの紹介1.1 仮想化1.1.1 仮想化とは何ですか?コンピュータにおける仮想化とは...
LinuxにMySQL 8.0.25をインストールするための最新のチュートリアルを参考にしてください...
最近、社内の重要なサーバデータを定期的にストレージにバックアップし、ついでにメモしておきたい以前、W...
iPad でページをデバッグするにはどうすればいいですか? iOS 5 をご利用の場合、iPad の...
目次1. docker環境が正常かどうかを確認する2. miniIOイメージをダウンロードする3. ...
タイトルの通り、ページを修正すると以下のような状況が発生する可能性があります。現在、古いページを改修...
リンク上の点線のボックスを削除しますコードをコピーコードは次のとおりです。 a:アクティブ、a:フォ...
MySQL 起動エラーWindows 10 に MySQL をインストールする前は、net star...
1. スクロールの実装原理better-scroll のスクロール原理は、ブラウザのネイティブスクロ...
目次1. 動的型付けとは何ですか? 2. データ型2.1 プリミティブ型 (6 つのプリミティブ型、...