IN und Unterabfrage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • IN und Unterabfrage

    Hallo zusammen..

    folgender Text
    PHP-Code:
    $test=mysql_query("SELECT * FROM cms_hotels WHERE id IN (SELECT hotel_id FROM cms_hotelkat)")
    or die (
    mysql_error()); 
    gibt das wunderbar hilfreiche "You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT hotel_id FROM cms_hotelkat)' at line 1" aus. So weit, so gut.

    Nur behauptet das Manual, das
    SELECT s1 FROM t1 WHERE s1 IN (SELECT s1 FROM t2);
    richtig ist.

    Wer kann mir da helfen?
    Danke schon mal.
    Wahrheit ist unser kostbarster Besitz. Lasst uns sparsam mit ihr umgehen. Mark Twain

  • #2
    Ein Vergleich der MySQL-Versionen?

    Kommentar


    • #3
      Och nööö
      Client API version 4.0.20

      2.8.2. Dinge, die in naher Zukunft erledigt werden müssen

      Unteranfragen (Subqueries). select id from t where grp in (select grp from g where u > 100)
      Wie könnte man das denn alternativ erledigen? MySQL-Version kann ich nicht ändern, würde das mit nem "normalen" Array anstelle der Unterabfrage funktionieren?

      Danke
      Wahrheit ist unser kostbarster Besitz. Lasst uns sparsam mit ihr umgehen. Mark Twain

      Kommentar


      • #4
        Ja, das würde es.

        Du kannst aber auch mit einem JOIN arbeiten
        Code:
        SELECT h.*
        FROM cms_hotels h
          INNER JOIN cms_hotelkat k ON h.id = k.hotel_id
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Die Joins, da war was..
          Da blätter ich doch direkt noch mal als Auffrischung in meinem SQL-Buch nach, vielen Dank!
          Wahrheit ist unser kostbarster Besitz. Lasst uns sparsam mit ihr umgehen. Mark Twain

          Kommentar

          Lädt...
          X