wählen Sie aus zwei Tabellen in mySQL mit vermissten Korrespondenten
, um Daten aus zwei Tabellen abzurufen und Fälle zu verarbeiten, in denen nicht alle Zeiger in einer Tabelle entsprechende Steife in der anderen haben. Dieser Ansatz unterscheidet sich von der veralteten impliziten Join -Methode und bietet eine größere Flexibilität.
betrachten Sie das folgende Beispiel:
Sie haben zwei Tabellen, Kategorien (mit Spalten ID und Titel) und Produkte (mit Spalten ID, Eigentümer, Eigentum, Titel und Preis. Preise, gruppiert nach Kategorie -ID. Die aktuelle Abfrage schließt jedoch Kategorien ohne entsprechende Produkte aus.
Um dieses Problem zu lösen, verwenden Sie einen linken Join:
auswählen sc.*, Ifnull (min (s.price), 0) als Minp, Ifnull (max (s.price), 0) als maxp Aus Kategorien als SC Links bei Produkten als s Auf S.Ownerid = sc.id Gruppe von sc.id
SELECT sc.*, IFNULL(MIN(s.price), 0) AS minp, IFNULL(MAX(s.price), 0) AS maxp FROM categories AS sc LEFT JOIN products AS s ON s.ownerid = sc.id GROUP BY sc.id
Alternativ können Sie je nach spezifischen Anforderungen Null für diese Kategorien zurückgeben, abhängig von Ihren spezifischen Anforderungen.
.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