Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] verschiedene Query Ergebnisse in MySQL 4.0.x und 4.1.x

Einklappen

Neue Werbung 2019

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

  • [Erledigt] verschiedene Query Ergebnisse in MySQL 4.0.x und 4.1.x

    Hi,

    die folgende SQL Query liefert auf einen MySQL 4.0.x Server das korrekte Ergebnis, auf MySQL 4.1.x jedoch nur ein leeres Ergebnis ohne Fehlermeldung. Es ist sicherlich nur eine Kleinigkeit, aber was?
    Die MySQL Doku hilft hier leider nicht weiter, demnach gibts es bei "NOT IN" keinen Unterschied zwischen den MySQL Versionen. Auch die Variationen von NOT IN ändern am Problem nichts.

    SELECT hd.id, hd.groesse FROM hd
    LEFT JOIN hd_verw ON hd.id = hd_verw.hd
    WHERE hd.id NOT IN (hd_verw.hd) ORDER BY hd.id


    In der Tabelle hd sind Festplatten definiert. In einer zweiten Tabelle werden Festplatten einem Gerät zugewiesen. Hier soll einfach "nur" eine Liste der Festplatten angezeigt werden, die keinem Gerät zugewiesen sind. Wie gesagt, unter 4.0.x klappt das auch korrekt.

    Thomas


  • #2
    Versuchs mal so:
    Code:
    SELECT hd.id, hd.groesse FROM hd
    LEFT JOIN hd_verw ON hd.id = hd_verw.hd
    WHERE hd_verw.hd IS NULL ORDER BY hd.id
    ------^^^^^^^^^^^^^^^^^^-------------------
    ~dilemma~

    Kommentar


    • #3
      Nachtrag:
      Der Unterschied zwischen Version 4.0 und Version 4.1
      ist hier doch beschrieben:

      http://dev.mysql.com/doc/mysql/en/co...operators.html

      expr IN (value,...)
      [...]
      Returns 1 if expr is any of the values in the IN list, else returns 0.
      [...]
      To comply with the SQL standard, from MySQL 4.1 on IN returns NULL
      not only if the expression on the left hand side is NULL,
      but also if no match is found in the list and one of the expressions in the list is NULL.
      [...]
      ~dilemma~

      Kommentar


      • #4
        Hi,

        Zitat von dilemma
        Versuchs mal so:
        vielen Dank, das klappt! Werde mir die Doku nochmal genauer anschauen.

        Thomas

        Kommentar

        Lädt...
        X