Kilian: Select in Select Anweisung

Hallo, ich habe dieses Forum gefunden, weiß aber nicht ob ich auch MYSQL Fragen posten darf, oder ob es spezifisch nur um HTML geht. Falls ja, dann lege ich los Ich erstelle zuerst die Abfrage

select a.textfeld FROM table a  WHERE a.cat=0 AND a.zuweisung=0

in der anschließenden Ausgabe

while($ausgabe= $statement->fetch())

führe ich eine weitere Abfrage aus:

select b.textfeld  FROM table b WHERE b.zuweisung=32

Ich habe aber gesehen, dass es auch die Möglichkeit einer verschachtelten SELECT Abfrage gibt. Ich habe es mit LEFT JOIN versucht, aber ich denke es war der falsche Weg.

  1. Hallo Kilian,

    herzlich Willkommen bei SELFSQL 😉

    Ich habe aber gesehen, dass es auch die Möglichkeit einer verschachtelten SELECT Abfrage gibt.

    Gibt es.

    Ich habe es mit LEFT JOIN versucht, aber ich denke es war der falsche Weg.

    Auch das gibt es.

    Ohne Kenntnis der Datenbank lässt sich nicht wirklich viel dazu sagen.

    Wenn zum Beispiel die Daten aus deiner Tabelle A nicht mit denen aus B verknüpft sind, wäre LEFT JOIN vs. NOT IN vs. NOT EXISTS vielleicht ein möglicher Einstieg.

    Bis demnächst
    Matthias

    --
    Pantoffeltierchen haben keine Hobbys.
    ¯\_(ツ)_/¯
    1. danke Matthias

      In der mysql Datenbank sind die Daten so

      Id – cat – zuweisung – textfeld

      1 – 1 – 0 – Überschrift 1

      2 – 0 – 1 – inhalt zu 1

      3 – 0 – 1 – inhalt zu 1

      4 – 2 – 1 – Überschrift 2

      5 – 0 – 1 – inhalt zu 1

      6 – 0 – 2 – inhalt zu 2

  2. ich sehe nicht, dass die beiden selects irgend eine Verbindung haben.

    Aus dem ersten select gewinnst du nur den Wert a.textfeld, verwendest ihn aber im zweiten select nicht.

    Im übertragenen Sinn:

    In Tabelle a „geraete“ fragst du die Namen der Geräte ab (Kühlschrank Herd, Stabmixer), die sich im Raum 0 befinden.

    In Tabelle b „gaeste“ fragst du die Namen der Gäste ab, die sich im Konferenzraum 32 eingebucht haben.

    Nun hast du Kühlschrank Herd, Stabmixer und Müller, Meier, Schulze.

    Was bringt dir das?

    Irgendwie ist dein Problem nicht rübergekommen.

  3. Tach!

    Ich habe aber gesehen, dass es auch die Möglichkeit einer verschachtelten SELECT Abfrage gibt. Ich habe es mit LEFT JOIN versucht, aber ich denke es war der falsche Weg.

    Ein Left Join kann der richtige Weg sein, aber auch ein Inner Join. Wenn jedoch nur ein einzelner Wert aus der anderen Tabelle genommen werden soll, kann auch ein Correlated Subquery ausreichen.

    dedlfix.