Kombinierte Verwendung von INNER JOIN und OUTER JOIN
Beim Ausführen von Multi-Table-Join-Abfragen ist die Reihenfolge von INNER JOIN und OUTER JOIN entscheidend. Viele Leute glauben fälschlicherweise, dass die Verwendung eines INNER JOIN nach einem OUTER JOIN die Wirkung des OUTER JOIN aufhebt, aber das ist nicht ganz richtig.
Die Rolle von INNER JOIN
INNER JOIN entfernt Zeilen aus der Ergebnismenge, die keine übereinstimmenden Zeilen in der verbundenen Tabelle haben. Wenn in übereinstimmenden Spalten (zum Beispiel Primärschlüssel- und Fremdschlüsselpaare) keine NULL-Werte vorhanden sind, werden diese nicht übereinstimmenden Zeilen trotzdem eliminiert.
Potenzielle Probleme
Die Wirkung eines OUTER JOIN wird nur dann durch einen nachfolgenden INNER JOIN ausgeglichen, wenn die ON-Klausel des INNER JOIN erforderliche Zeilen im OUTER JOIN angibt, die ausgeschlossen werden können. Zum Beispiel in der folgenden Abfrage:
SELECT * FROM person LEFT JOIN address ON person.address_id = address.id INNER JOIN city ON address.city_id = city.id
Die zweite ON-Klausel erfordert, dass address.city_id nicht NULL ist, was die Wirkung des LEFT JOIN zunichte machen kann. Um dieses Problem zu beheben, sollte der zweite JOIN in einen LEFT OUTER JOIN geändert werden.
Best Practices
Obwohl es die Ergebnisse nicht ändert, wird im Allgemeinen empfohlen, INNER JOIN vor OUTER JOIN in der Abfrage einzufügen. Dies trägt zur Verbesserung der Lesbarkeit bei und stellt sicher, dass notwendige Einschränkungen angewendet werden, bevor optionale Einschränkungen angewendet werden. Vermeiden Sie außerdem nach Möglichkeit die Verwendung von RIGHT OUTER JOIN und verwenden Sie stattdessen LEFT OUTER JOIN, was die Klarheit und einfache Implementierung verbessert.
Das obige ist der detaillierte Inhalt vonÜberschreibt ein INNER JOIN die Ergebnisse eines vorherigen OUTER JOIN?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In dem Artikel werden mithilfe der Änderungstabelle von MySQL Tabellen, einschließlich Hinzufügen/Löschen von Spalten, Umbenennung von Tabellen/Spalten und Ändern der Spaltendatentypen, erläutert.

In Artikel werden die Konfiguration der SSL/TLS -Verschlüsselung für MySQL, einschließlich der Erzeugung und Überprüfung von Zertifikaten, erläutert. Das Hauptproblem ist die Verwendung der Sicherheitsauswirkungen von selbstsignierten Zertifikaten. [Charakterzahl: 159]

In Artikel werden Strategien zum Umgang mit großen Datensätzen in MySQL erörtert, einschließlich Partitionierung, Sharding, Indexierung und Abfrageoptimierung.

In Artikel werden beliebte MySQL -GUI -Tools wie MySQL Workbench und PhpMyAdmin beschrieben, die ihre Funktionen und ihre Eignung für Anfänger und fortgeschrittene Benutzer vergleichen. [159 Charaktere]

In dem Artikel werden in MySQL die Ablagerung von Tabellen mithilfe der Drop -Tabellenerklärung erörtert, wobei Vorsichtsmaßnahmen und Risiken betont werden. Es wird hervorgehoben, dass die Aktion ohne Backups, die Detaillierung von Wiederherstellungsmethoden und potenzielle Produktionsumfeldgefahren irreversibel ist.

In Artikeln werden ausländische Schlüssel zur Darstellung von Beziehungen in Datenbanken erörtert, die sich auf Best Practices, Datenintegrität und gemeinsame Fallstricke konzentrieren.

In dem Artikel werden in verschiedenen Datenbanken wie PostgreSQL, MySQL und MongoDB Indizes für JSON -Spalten in verschiedenen Datenbanken erstellt, um die Abfrageleistung zu verbessern. Es erläutert die Syntax und die Vorteile der Indizierung spezifischer JSON -Pfade und listet unterstützte Datenbanksysteme auf.

Artikel erläutert die Sicherung von MySQL gegen SQL-Injektions- und Brute-Force-Angriffe unter Verwendung vorbereiteter Aussagen, Eingabevalidierung und starken Kennwortrichtlinien (159 Zeichen).


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

mPDF
mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

Dreamweaver CS6
Visuelle Webentwicklungstools

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.