Heim >Backend-Entwicklung >PHP-Problem >Unterabfrageanweisung für PHP-Mehrtabellenabfrage

Unterabfrageanweisung für PHP-Mehrtabellenabfrage

藏色散人
藏色散人Original
2020-08-07 09:57:482315Durchsuche

php SQL-Unterabfrageanweisung besteht darin, zuerst ein Ergebnis über eine Anweisung abzufragen und dann das Ergebnis erneut über eine Abfrageanweisung abzufragen, z. B. „Wählen Sie max(Waren-ID), Katzen-ID, Warenname aus der Warengruppe nach Katze aus“.

Unterabfrageanweisung für PHP-Mehrtabellenabfrage

Empfehlung: „PHP-Video-Tutorial

Die sogenannte Unterabfrageanweisung besteht darin, zuerst ein Ergebnis über eine Anweisung abzufragen und das Ergebnis dann erneut über eine Abfrageanweisung abzufragen. Im Allgemeinen gibt es drei Arten von Unterabfrageanweisungen: Lassen Sie uns dies anhand eines Falles erklären.

Fall: Fragen Sie die neuesten Produktinformationen für jede Kategorie in [Beispiel 1] ab.

Wenn Sie einen einzelnen Satz abfragen, können Sie ihn nicht erhalten. Folgendes ist falsch:

Wählen Sie max(goods_id),cat_id,goods_name aus der Warengruppe nach cat_id;

Auf diese Weise wird die neueste Produkt-ID-Nummer (goods_id) jeder Kategorie erhalten, aber auch andere Informationen wie z als Warenname Der Produktname ist der alte. Wenn Sie daher die neuesten Produktinformationen für jede Kategorie erhalten möchten, müssen Sie entweder eine separate Abfrage durchführen oder eine Unterabfrage verwenden.

1: where-Unterabfrageanweisung.

Wählen Sie * aus Waren aus, in denen die Waren-ID enthalten ist (wählen Sie max(Waren-ID) aus der Warengruppe nach Katzen-ID aus); Fragen Sie die Produktinformationen der neuesten Produkt-ID jeder Kategorie über die bedingte Anweisung where...in () ab. Hier ist die Group-by-Anweisung als Unterabfrageanweisung von where.

2: aus der Unterabfrageanweisung.

select * from (select * from waren order by cat_id,goods_id desc) as gk group by cat_id;

From-Unterabfrage dient dazu, die Ergebnisse der Auswahlabfrage als Tabelle zu verwenden, wie in Fettdruck dargestellt obiger Code. Hinweis: Der von select abgefragten Ergebnismenge muss ein Alias ​​zugewiesen werden, z. B. der rote Teil im obigen Code. Andernfalls wird ein Fehler gemeldet.

Auf diese Weise fragen wir auch die neuesten Produktinformationen unter jeder Kategorie ab.

3: Vorhandene Unterabfrageanweisung:

Titel: Abfrage [Beispiel 1], welche Spalten Produkte enthalten. Name der Kategorietabelle: Kategorie Produkttabelle = Kategorie-ID in der Kategorietabelle), ob ein Produkt vorhanden ist. Wenn ja, fragen Sie die Informationen dieser Kategorie ab. Wenn nicht, schließen Sie diese Kategorie aus. Das Endergebnis besteht darin, dass die Produktklassifizierungsinformationen des Produkts abgefragt werden.

Nun, hier stellen wir drei häufig verwendete Unterabfrageanweisungen für MySQL-Datenbanken vor: die Unterabfrageanweisung „Where“, die Unterabfrageanweisung „From“ und die Unterabfrageanweisung „Existenz“. Wenn Sie keine Unterabfrageanweisungen verwenden möchten, können Sie diese natürlich auch zur Ausführung in zwei Anweisungen aufteilen, was den gleichen Effekt hat.

Das obige ist der detaillierte Inhalt vonUnterabfrageanweisung für PHP-Mehrtabellenabfrage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn