wo ist denn hier der Fehler?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • wo ist denn hier der Fehler?

    Hallo allerseits,

    ich habe hier eine Abfrage, die auf eine DB2 Datenbank perfekt läuft, aber wenn ich versuche die Abfrage in MySQL auszuführen bekomme ich eine Fehlermeldung. Der Aufbau der beiden DBs sind gleich, nur die Daten sind nicht auf gleichem Stand - das ist aber sowieso unerheblich.

    Hier meine Abfrage:
    PHP Code:
    SELECT TSTKNTSPROTSSKITSBES
    FROM TKDFRA
    WHERE TSCAT 
    '1' AND TSTKN 'demo'
    UNION ALL 
    SELECT TSTKN
    TSPROTSSKITSBES
    FROM TKDFRA
    WHERE TSCAT 
    '1' AND TSTKN 'DUMMY' AND TSPRO NOT
    IN 
    (


    SELECT TSPRO
    FROM TKDFRA
    WHERE TSCAT 
    '1' AND TSTKN 'demo'
    )
    ORDER BY TSPRO

    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 TSPRO
    FROM TKDFRA
    WHERE TSCAT =  '
    1' AND TSTKN =  'demo
    Ich sehe keinen Fehler in der Abfrage

    Bitte um Hilfe

    Gruß, Otto
    EDIT:
    Entschuldigung, das heißt NOT IN
    PHP Code:
    WHERE TSCAT '1' AND TSTKN 'DUMMY' AND TSPRO NOT
    IN 
    Last edited by otto-mueller; 18-03-2004, 11:10.

  • #2
    hast die anfuehrzeichen vorne und hinten richtig gesetzt ...
    ist das die ganze fehlermeldung ????

    lass dir mal dein query ueber echo ausgeben ....
    willst du aus dem int-feld etwa etwas mit '4' auslesen ???
    das klappt naemlich auch net


    gruss
    iglo


    EDIT:
    ist das feld TSCAT nen INT oder nen varchar feld ???
    wenn es nen int feld ist mach die anfuehrungsstriche um die zahl weg

    Comment


    • #3
      MySQL mag kein Subselect, baut deine Abfrage in JOIN um

      Comment


      • #4
        Hallo,

        ja, das ist die ganze Fehlermeldung.

        Zuerst hatte ich die Abfrage in meinem PHP-Skript, als es dort nicht funktionierte, habe ich dann die Abfrage direkt in phpMyAdmin ausgeführt und die Fehlermeldung erhalten, die ich euch beschrieben habe. Im Anhang findet ihr die Struktur und einige dummy-Daten von der Tabelle tkdfra.

        Ich habe auch sonst subselects in dieser Form in Mysql gehabt und die haben einwandfrei funktioniert.

        Danke nochmal Gruß
        Otto
        Attached Files

        Comment


        • #5
          bist du sicher, dass du MySQL >= Version 4.1 hast

          Comment


          • #6
            Ich weiss ja nicht welche MySQL Version Du einsetzt ... allerdings:

            Subselects werden unterstützt seit MySQL 4.1,
            UNIONs werden unterstützt seit MySQL 4.0.0
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Comment


            • #7
              Hallo,

              meine Mysql Version ist folgende:

              MySQL Version 4.0.18-max-debug

              Ich habe die Version 4.1.1a von hier heruntergeladen, aber ich konnte sie nicht installieren.

              Ich versuche es im Bereich "Fragen zu Installation (LAMP, WAMP & Co.)" in diesem Forum zu klären.

              Bis dahin

              Viele Grüße
              Otto

              Comment

              Working...
              X