Problem mit Unterabfrage

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

  • Problem mit Unterabfrage

    Hallo Forum,

    mein Provider hat leider eine MySQL-Version uínstalliert, die keine Unterabfragen unterstützt. Ich habe eine Abfrage geschrieben, die nun aber Unterabfragen benutzt. Heir ist sie:

    SELECT A. *
    FROM Addresses A, CatToAdd B, Category C
    WHERE A.ID = B.FS_Address AND B.FS_Category = C.ID_Category AND C.Category =1 AND A.ID
    IN (

    SELECT D.ID
    FROM Addresses D, CatToAdd E, Category F
    WHERE F.ID_Category = E.FS_Address AND E.FS_Category = F.ID_Category AND F.ID_Category =2
    )

    Kann mir jemand sagen, wie ich diese Abfrage umbauen kann, damit sie ohne Unterabfrage funktioniert aber dasselbe Ergebnis bringt?

    Danke & Gruß
    Thomas

  • #2
    mal Join probiert?

    http://dev.mysql.com/doc/mysql/de/JOIN.html
    mfg
    marc75

    <Platz für anderes>

    Kommentar


    • #3
      Ich habe die Abfrage mal mit Jopins gemacht:

      SELECT Addresses.name, Addresses.vorname
      FROM Addresses INNER JOIN (Category INNER JOIN CatToAdd ON Category.ID_Category = CatToAdd.FS_Category) ON Addresses.ID = CatToAdd.FS_Address
      WHERE (((Category.ID_Category)=2)) and Addresses.ID IN
      (
      SELECT Addresses.ID
      FROM Addresses INNER JOIN (Category INNER JOIN CatToAdd ON Category.ID_Category = CatToAdd.FS_Category) ON Addresses.ID = CatToAdd.FS_Address
      WHERE (((Category.ID_Category)=3))
      )

      Kommt aber folgender Fehler:

      MySQL meldet:

      #1064 - 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 Addresses.ID
      FROM Addresses
      INNER JOIN ( Category
      INNER

      Kommentar


      • #4
        Original geschrieben von tklein22000
        Ich habe die Abfrage mal mit Jopins gemacht:
        [...]
        Wetten dass da auch stehen könnte:

        Ich habe die Tabellen in Access verknüpft und bin auf die SQL-Ansicht

        Kommentar


        • #5
          Ja, du hast Recht. Aber es müsste doch trotzdem mit MySQL auch gehen!!! Was ist der Fehler?

          Kommentar


          • #6
            1. gibt es denn schon MySQL, welche sub-select unterstützt? IMHO noch nicht, es gibt zwar Vers. 4.1 aber Alpha Release
            2. Warum macht man eine Query mit sub-select, wenn man aber weiss, dass die online nicht funz
            3. Schau mal deine Query scharf an, brauchst du hier wirklich den sub-select?
            4. in deiner letzten Posting ist das sub-select immer noch drin, @marc75 meint aber eventuell durch Umbau auf JOIN kann man dann ohne sub-select auskommen.

            Kommentar


            • #7
              @marc75

              Kannst Du mal die Abfrage so machen wie du es meinst. Ich hab nämlich keine Ahnung wie ich das mit Joins, aber ohne Subselects anstellen soll... :-(

              Kommentar


              • #8
                hilft dir vielleicht http://www.php-resource.de/forum/sho...threadid=28292?
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar

                Lädt...
                X