Grundlegendes zu MySQL Self-Joins
Self-Joins, eine in SQL-Datenbanken verwendete Technik, ermöglichen es Ihnen, eine Tabelle gegen sich selbst abzufragen. In diesem Fall untersuchen wir einen MySQL-Self-Join, um Ereignisse zu finden, deren Startdatum um eine bestimmte Anzahl von Tagen nach einem anderen Ereignis liegt.
Abfrageaufschlüsselung:
SELECT event2.id, event2.startdate, event2.price FROM mm_eventlist_dates event1 JOIN mm_eventlist_dates event2 ON event2.startdate = date_add(event1.enddate, INTERVAL 1 DAY) WHERE event1.id=$id;
1. Datenextraktion (FROM)
FROM mm_eventlist_dates event1 JOIN mm_eventlist_dates event2
Dieser Teil extrahiert Daten aus zwei Tabellen, mm_eventlist_dates, dargestellt als event1 und event2, für die Selbstverknüpfung.
2. Join-Bedingung (ON)
ON event2.startdate = date_add(event1.enddate, INTERVAL 1 DAY)
Diese Bedingung definiert den Join zwischen den beiden Tabellen. Es gibt an, dass das Startdatum von Ereignis2 einen Tag nach dem Enddatum von Ereignis1 liegen muss.
3. Filterung (WHERE)
WHERE event1.id=$id
Dieser Filter beschränkt die Ergebnisse auf Ereignisse, deren ID mit der angegebenen $id übereinstimmt.
4. Feldauswahl (SELECT)
SELECT event2.id, event2.startdate, event2.price
Dieser Teil gibt an, welche Felder aus der Tabelle „event2“ in die Ergebnismenge aufgenommen werden sollen: ID , Startdatum und Preis.
So funktioniert es:
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3