Ich arbeite derzeit an dem Versuch, die folgende MS SQL-Abfrage zu Informix zu konvertieren, aber ich bin nicht sicher, wie.Konvertieren einer MS SQL-Abfrage in eine Informix-Abfrage
SELECT NumPlan.DNOrPattern, Device.Name, DeviceNumPlanMap.Display, TypeModel.Name AS Model, DeviceNumPlanMap.NumPlanIndex,
Device.AddOnModules
FROM DeviceNumPlanMap INNER JOIN
Device ON DeviceNumPlanMap.fkDevice = Device.pkid INNER JOIN
NumPlan ON DeviceNumPlanMap.fkNumPlan = NumPlan.pkid INNER JOIN
TypeModel ON Device.tkModel = TypeModel.Enum
WHERE (TypeModel.Enum <> '10') AND (TypeModel.Enum <> '12') AND (TypeModel.Enum <> '120') AND (TypeModel.Enum <> '90') AND
(TypeModel.Enum <> '73') and (TypeModel.Enum <> '72') and (TypeModel.Enum <> '80') AND (DeviceNumPlanMap.NumPlanIndex = '1') ORDER BY NumPlan.DNOrPattern, DeviceNumPlanMap.NumPlanIndex
Jede Hilfe, wie Sie dies in eine Informix-Abfrage konvertieren, wäre sehr willkommen.
Haben Sie versucht, es auszuführen? Welchen Fehler bekommst du? –
Es scheint das Symbol <> nicht zu mögen – user1328147
Normalerweise verwenden Sie '! =', Um mit Informix 'nicht gleich' anzugeben. Ich muss zugeben, dass ich vergessen habe, dass der SQL-Standard "<>" verlangt. Erfreulicherweise zeigen Experimente, dass Informix auch '<>' akzeptiert - getestet mit Informix 12.10.FC6 unter Mac OS X 10.11.5. Berücksichtigen Sie auch die Vorzüge von 'TypeModel.Enum NOT IN '(' 10 ',' 12 ',' 120 ',' 90 ',' 73 ',' 72 ',' 80 ')'. Wenn ich die Abfrage in der Frage für eine Reihe von leeren Tabellen ausführen, erhalte ich keinen Syntaxfehler. Welche Version von Informix verwenden Sie auf welcher Plattform? Verwenden Sie eine zwischengeschaltete Software, die SQL manipuliert? –