[gelöst] Anfrage lässt sich nicht mit AND / OR kombinieren
Verfasst: 10 Jan 2023, 16:44
Hallo,
ich möchte eine Abfrage erstellen, die mir ausgibt, auf welchen DELL-Rechnern eine bestimmte DELL-Software nicht installiert ist. Jede einzelne Anfrage ergibt, auch negiert, die richtigen Antworten.
Sobald ich sie kombiniere, gibt es Fehlermeldungen wie:
[OperationalError] (MySQLdb.OperationalError) (1066, "Not unique table/alias: 'g'")
[SQL: SELECT DISTINCT HOST.hostId FROM HOST INNER JOIN SOFTWARE_CONFIG f ON (HOST.hostId=f.clientId) INNER JOIN SOFTWARE g ON (f.name=g.name AND f.version=g.version AND f.subVersion=g.subVersion AND f.language=g.language AND f.architecture=g.architecture) INNER JOIN HARDWARE_CONFIG_COMPUTER_SYSTEM i ON (i.hostId LIKE HOST.hostId) INNER JOIN HARDWARE_DEVICE_COMPUTER_SYSTEM g ON (g.hardware_id LIKE i.hardware_id) WHERE ( f.name LIKE 'Dell' ) ]
(Background on this error at: https://sqlalche.me/e/14/e3q8)
Der Link zum "Hintergrund" hat mir nicht geholfen. Was läuft hier falsch? Wie kann die Abfrage erfolgreich durchgeführt werden?
Danke im Voraus
Martin
ich möchte eine Abfrage erstellen, die mir ausgibt, auf welchen DELL-Rechnern eine bestimmte DELL-Software nicht installiert ist. Jede einzelne Anfrage ergibt, auch negiert, die richtigen Antworten.
Sobald ich sie kombiniere, gibt es Fehlermeldungen wie:
[OperationalError] (MySQLdb.OperationalError) (1066, "Not unique table/alias: 'g'")
[SQL: SELECT DISTINCT HOST.hostId FROM HOST INNER JOIN SOFTWARE_CONFIG f ON (HOST.hostId=f.clientId) INNER JOIN SOFTWARE g ON (f.name=g.name AND f.version=g.version AND f.subVersion=g.subVersion AND f.language=g.language AND f.architecture=g.architecture) INNER JOIN HARDWARE_CONFIG_COMPUTER_SYSTEM i ON (i.hostId LIKE HOST.hostId) INNER JOIN HARDWARE_DEVICE_COMPUTER_SYSTEM g ON (g.hardware_id LIKE i.hardware_id) WHERE ( f.name LIKE 'Dell' ) ]
(Background on this error at: https://sqlalche.me/e/14/e3q8)
Der Link zum "Hintergrund" hat mir nicht geholfen. Was läuft hier falsch? Wie kann die Abfrage erfolgreich durchgeführt werden?
Danke im Voraus
Martin