Olly: Verschachtelter SELECT mit PHP/mySQL

Hallo,

ich möchte gerne einen verschachtelten SELECT benutzen, der in etwa so ausschaut:
SELECT * FROM titles WHERE publicID NOT IN (SELECT publicID FROM publishers)

Das sollte z.B. alle Titels ausspucken die keinen Verlag haben. Das dumme: Bei mir passiert mit dieser Syntax nix. Schreib ich an Stelle des inneren SELECT eine Liste möglicher IDs, funtzt es!?

Warum arbeite ich nicht mit JOIN? Ich finde diese Variante intuitiver;-)

Auf dem Server läuft MySQL 4.0.24 und ich denke mal das meine Wunschlsg nicht unterstützt wird!?

Vielen Dank und Gruss

Olly

  1. Hallo,

    ich möchte gerne einen verschachtelten SELECT benutzen, der in etwa so ausschaut:
    SELECT * FROM titles WHERE publicID NOT IN (SELECT publicID FROM publishers)

    Das sollte z.B. alle Titels ausspucken die keinen Verlag haben. Das dumme: Bei mir passiert mit dieser Syntax nix. Schreib ich an Stelle des inneren SELECT eine Liste möglicher IDs, funtzt es!?

    Warum arbeite ich nicht mit JOIN? Ich finde diese Variante intuitiver;-)

    und langsamer!

    Auf dem Server läuft MySQL 4.0.24 und ich denke mal das meine Wunschlsg nicht unterstützt wird!?

    Subselects werden erst ab 4.1 unterstützt.

    Gruß
    Reiner

    1. Hallo Reiner

      SELECT * FROM titles WHERE publicID NOT IN (SELECT publicID FROM publishers)
      Warum arbeite ich nicht mit JOIN? Ich finde diese Variante intuitiver;-)

      und langsamer!

      Nicht unbedingt, siehe http://forum.de.selfhtml.org/archiv/2005/7/t111148/#m699064.

      Klar, bei MySQL könnte das Ergebnis anders aussehen.

      Freundliche Grüße

      Vinzenz