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
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
Kommentar