MySQL の自己結合は、別のイベントの 1 日後のイベントをどのように見つけますか?
MySQL の自己結合について
最近のクエリでは、MySQL の自己結合の概念について説明しました。目標は、別のイベント (Event1) の 1 日後のイベント (Event2) に関する情報を取得することでした。クエリは正常に実行されますが、その機能についてはさらに理解する必要があります。
クエリの分割:
クエリはいくつかの異なる部分に分割できます:
-
データ取得:
- FROM mm_eventlist_datesevent1: mm_eventlist_dates という名前のテーブルからデータを選択し、エイリアスevent1を割り当てます。
- JOIN mm_eventlist_datesevent2: mm_eventlist_dates で自己結合を実行し、event2 としてエイリアスされた 2 番目の仮想テーブルを作成します。
-
結合条件:
- ONevent2.startdate = date_add(event1.enddate, INTERVAL 1 DAY):event1 の終了日に 1 日を加えた日付と一致する開始日に基づいて、event2 レコードをフィルターする結合条件を指定します。
-
フィルタリング:
- WHEREevent1.id = $id:event1 テーブルをフィルタリングして、指定された ID を持つレコードのみを取得します。
仕組み:
- レコードの選択: WHERE 句は最初に特定のイベント (Event1) を取得します。 ID に基づいて行われます。
- 日付計算: date_add() 関数は、選択した Event1 の終了日の翌日を計算します。
- フィルタリングの結合:次に、結合条件は、開始日が計算された日付と一致するイベント 2 のレコードと一致します。
- データ抽出: 最後に、SELECT 句は、event2 テーブルから ID、開始日、価格の 3 つのフィールドを取得します。 .
簡略化された視覚化:
各イベントに ID、開始日、価格が含まれる 2 つの別々のイベント リスト (Event1 と Event2) を想像してください。クエリの手順は次のとおりです。
- 指定された ID で Event1 を見つけます。
- Event1 の終了日の翌日を計算します。
- 開始日が一致する Event2 イベントを特定します。計算された日付。
- 一致する Event2 レコードから必要なフィールドを抽出します。
以上がMySQL の自己結合は、別のイベントの 1 日後のイベントをどのように見つけますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Alter Tableステートメントを使用してMySQLのテーブルをどのように変更しますか?

Linuxでmysqlを実行します(phpmyAdminを使用してポッドマンコンテナを使用して/なし)

MACOSで複数のMySQLバージョンを実行する:ステップバイステップガイド

MySQL接続用のSSL/TLS暗号化を構成するにはどうすればよいですか?

人気のあるMySQL GUIツール(MySQL Workbench、PhpMyAdminなど)は何ですか?
