Nachdem sich der Benutzer angemeldet hat, gibt es im Forum -Menü zwei weitere Links, nämlich: Das von mir veröffentlichte Thema und das Thema, an dem ich teilnehme. Die Anfrage des ersteren ist einfacher. Wenn die Themenposts und Antworten hier in einer Datentabelle sind. Wir wissen im Allgemeinen, wenn die Antwort veröffentlicht wird, kann der Titel weggelassen werden. Wie hat diese Frage das gemacht?
Schauen wir uns zuerst den Code des sich bewegenden Netzwerks an:
Das Folgende ist das Codefragment:
Wählen Sie Top 200 * aus dem Thema WHERE TopicID in (Wählen Sie Top 200 RootID aus & nowsuseBbs und wo postuserid = & userId & order von tearerId Desc SC
Warum gibt es kleine Klammern in dieser Abfrage? Was bedeutet es? Und hören Sie sich die Zersetzung an.
Die Abfrage, die wir im Allgemeinen verwenden, ist eine einzelne Abfrage, aber die obige Abfrage besteht aus zwei Ebenen. Mit anderen Worten, führen Sie die Abfrage in der kleinen Halterung aus (wir nennen es eine untergeordnete Abfrage), und dann beginnt der Server externe Abfragen durchzuführen und gibt das richtige Ergebnis zurück. Die obige Abfrage, die erste Abfrageebene, besteht darin, alle vom Benutzer in dieser Version veröffentlichten Beiträge (einschließlich Antwort) zu überprüfen und dann das Thema dieser Aufkleber zu überprüfen.
Wie hoch sind die Vorteile einer verschachtelten Abfrage zusätzlich zu der obigen Funktion? Wenn die statistische Funktion erforderlich ist, um die statistische Funktion in der Suchbedingung (die häufig in der Analysestatistik verwendet wird) zu verwenden, können Sie verschachtelte Abfragen verwenden. Zum Beispiel ist der Code des Buches mit einem Buch mit durchschnittlicher Verkäufe aller Verkäufe erforderlich.
Wählen Sie title_id, qty // title_id die Buchnummer, Qty ist Verkauf
Aus dem Verkauf
Wobei Qty> AVG (Qty) // AVG die durchschnittliche Funktion ist, ist AVG (QTY) das durchschnittliche Verkaufsvolumen
Der Server fordert einen Fehler auf, da die statistische Funktion der Daten der Auswahlliste in der WHERE -Klausel nicht zulässig ist. Durch die Verwendung verschachtelter Abfragen in der WHERE -Klausel kann dieses Problem gelöst werden.
Das Folgende ist das Codefragment:
Wählen Sie title_id, qty
Aus dem Verkauf
Wo qty>
(Wählen Sie AVG (qty) aus dem Verkauf)