Heim > Artikel > Backend-Entwicklung > Verwandte Erläuterungen zum Links-Join-On und zur Platzierung der Where-Bedingung
links Die Platzierung von Joins an und wo Bedingungen sind in PHP sehr wichtig. In diesem Artikel werden die relevanten Kenntnisse im Detail erläutert.
SELECT p.pname,p.pcode,s.saleZeit vom Produkt als p Left Join sales_detail as s on (s.pcode=p.pcode) und s.saletime in ('2012-07-23','2012-07-05');
Das Ergebnis wurde gefunden:
+-------+-----------+
|. pname |
+-------+-----------+
| A |
|. A |. 2012-07-05 || | .pcode=p.pcode) where s .saletime in ('2012-07-23','2012-07-05');+----- --+---- ---+-----------+| pname |+------ -+------+--+| 23.07.2012 | |. A |. 2012-07-05 |. +---------- --+Fazit: Die bedingte Zuordnung in on zeigt einen Nullwert an, wenn die Daten in einer Tabelle nicht übereinstimmen die Bedingungen. Dabei werden die beiden Tabellen ausgegeben, die die Bedingungsdaten vollständig erfüllen.
Die Bedingungen im Left Join: Es werden die Benchmark-Daten der linken Tabelle und alle angezeigten Daten verwendet In der linken Tabelle wird angezeigt, und dann müssen Sie herausfinden, ob eine Korrelation zur rechten Tabelle besteht. Wenn das entsprechende Feld keinen Wert hat oder die Bedingungen nicht erfüllt, wird es auf NULL gesetzt. SELECT p.pname,p.pcode,s.saletime from product as p left join sales_detail as s on (s.pcode=p.pcode) ; Wenn Left Join verwendet wird, sieht der angezeigte Inhalt wie folgt aus+-------+-------+------------+
|. pname |. pcode |. saletime |
|. DE |. 2012-07-16 |. Da ist ein Wert drin
| 🎜>Wenn es einen Wert hat, aber die Bedingungen nicht erfüllt, wird es auf NULL gesetzt. Wenn kein Wert vorhanden ist, muss er NULL sein
Wenn es sich um eine Where-Bedingung handelt, muss diese erfüllt sein.
Anwendungsszenarien: Wenn beispielsweise eine Haupttabelle vorhanden ist, können Sie einen Left-Join in Betracht ziehen, um Daten basierend auf der Haupttabelle anzuzeigen.
1. Bei Linksverknüpfungen werden alle Daten in der linken Tabelle gefunden, unabhängig davon, welche Bedingung folgt. Wenn Sie also filtern möchten, müssen Sie die Bedingung nach
2 einfügen Beim Inner Join können die Daten in der Tabelle, die die Bedingung erfüllen, erst dann erkannt werden, was eine Filterrolle spielen kann. Sie können die Bedingung auch hinter where setzen.
Der Unterschied zwischen der Bedingung „Ein“ und der Bedingung „Where“ in SQL
Wenn die Datenbank Datensätze zurückgibt, indem sie zwei oder mehr Tabellen verbindet, generiert sie eine temporäre Zwischentabelle , und geben Sie diese temporäre Tabelle dann an den Benutzer zurück. Bei Verwendung von Left Jion ist der Unterschied zwischen On- und Where-Bedingungen wie folgt: 1. Die On-Bedingung ist eine Bedingung, die beim Generieren einer temporären Tabelle verwendet wird in on ist wahr. Gibt die Datensätze in der Tabelle links zurück. 2. Die Where-Bedingung ist die Bedingung zum Filtern der temporären Tabelle, nachdem die temporäre Tabelle generiert wurde. Zu diesem Zeitpunkt hat Left Join keine Bedeutung (die Datensätze der linken Tabelle müssen zurückgegeben werden). Wenn die Bedingung nicht wahr ist, werden alle herausgefiltert. In diesem Artikel werden die Kenntnisse im Zusammenhang mit der Platzierung des linken Joins und den Wo-Bedingungen erläutert. Weitere Lernmaterialien finden Sie auf der chinesischen PHP-Website. Verwandte Empfehlungen:Verwandte Kenntnisse über die PHP+MySQL-Fuzzy-Abfragefunktion
Dateien über PHP-Methoden kopieren und verschieben
Über jQuery-Effekte – verwandte Kenntnisse zum Verstecken und Anzeigen
Das obige ist der detaillierte Inhalt vonVerwandte Erläuterungen zum Links-Join-On und zur Platzierung der Where-Bedingung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!