Mahlzeit hawkmaster,
SELECT
A.PrinterType, A.PrintSystemsID, B.PrinterTypeID, CONCAT(C.VendorName,', ',B.PrinterName) AS completename, D.InstallElementsID AS ColorMode
FROM
printsystems A
JOIN printertypes B ON B.PrinterType = A.PrinterType
JOIN printervendors C ON C.PrinterVendor_ID = B.PrinterVendor_ID
LEFT JOIN printertypes_ppdvalues D ON D.PrinterTypeID = B.PrinterTypeID
Hier klebst Du die Werte aus der Tabelle "printertypes_ppdvalues" nur dann an die bisherige Ergebnismenge, wenn die "PrinterTypeID" jeweils übereinstimmt. Das bedeutet aber auch, dass es in der Spalte "ColorMode" durchaus Einträge geben kann, die NULL sind.
WHERE
A.PWD = '1' AND A.PrintSystemsID != '1' AND D.InstallElementsID = 14 GROUP BY A.PrintSystemsID
Und hier machst Du Dir Dein LEFT JOIN von oben direkt wieder kaputt, weil Du leere Einträge gar nicht mehr zulässt.
Du kannst in der ON-Klausel eines LEFT JOINs durchaus auch mehrere Kriterien angeben:
LEFT JOIN printertypes_ppdvalues D ON (D.PrinterTypeID = B.PrinterTypeID AND D.InstallElementsID = 14)
WHERE A.PWD = '1' AND A.PrintSystemsID != '1' GROUP BY A.PrintSystemsID
sollte ungefähr das tun, was Du vermutlich möchtest.
MfG,
EKKi
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|