Requêtes MySQL pour OCS
Résolu
takitaka
Messages postés
14
Date d'inscription
Statut
Membre
Dernière intervention
-
takitaka Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
takitaka Messages postés 14 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'utilise le logiciel de gestion de parc OCS inventory et j'ai besoin de faire des requêtes sur la base SQL.
J'ai une table "softwares" qui contient les champs "NAME" (le nom du logiciel) & "HARDWARE_ID".
J'ai une autre table "hardware" qui contient les champs "USERID" (nom de l'utilisateur) & ID (qui est égal à "HARDWARE_ID" de la table "softwares").
Je voudrais afficher la liste des utilisateurs qui ne possèdent pas le logiciel "VNC" par exemple, comment puis-je faire ?
Je crois qu'il faut que je fasse une "outer join" mais je n'y arrive pas...
Pour info c'est MySQL 5.0.27 + phpMyAdmin 2.9.1.1
Merci !
J'utilise le logiciel de gestion de parc OCS inventory et j'ai besoin de faire des requêtes sur la base SQL.
J'ai une table "softwares" qui contient les champs "NAME" (le nom du logiciel) & "HARDWARE_ID".
J'ai une autre table "hardware" qui contient les champs "USERID" (nom de l'utilisateur) & ID (qui est égal à "HARDWARE_ID" de la table "softwares").
Je voudrais afficher la liste des utilisateurs qui ne possèdent pas le logiciel "VNC" par exemple, comment puis-je faire ?
Je crois qu'il faut que je fasse une "outer join" mais je n'y arrive pas...
Pour info c'est MySQL 5.0.27 + phpMyAdmin 2.9.1.1
Merci !
A voir également:
- Requêtes MySQL pour OCS
- Ocs inventory - Télécharger - Outils professionnels
- Mysql community server - Télécharger - Bases de données
- Ciné+ ocs - Accueil - Streaming
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de tennis mais pas de tennis de table ✓ - Forum Java
- Mysql gratuit ou payant - Forum MySQL
2 réponses
SELECT DISTINCT
USERID
FROM
softwares
INNER JOIN hardware ON HARDWARE_ID = ID
WHERE
USERID NOT IN
(
SELECT
USERID
FROM
softwares
INNER JOIN hardware ON HARDWARE_ID = ID
WHERE
NAME = 'VNC'
)
USERID
FROM
softwares
INNER JOIN hardware ON HARDWARE_ID = ID
WHERE
USERID NOT IN
(
SELECT
USERID
FROM
softwares
INNER JOIN hardware ON HARDWARE_ID = ID
WHERE
NAME = 'VNC'
)
Merci Phil mais MySQL me répond :
#1052 - Column 'NAME' in where clause is ambiguous . Il faut lui spécifier la table...puis après c'est au tour de "ID"...Donc j'ai modifié 2-3 trucs, et ça donne ceci qui fonctionne à merveille:
SELECT DISTINCT `USERID`
FROM `softwares`
INNER JOIN `hardware` ON `softwares`.`HARDWARE_ID` = `hardware`.`ID`
WHERE `hardware`.`USERID` NOT IN ( SELECT `USERID` FROM softwares
INNER JOIN `hardware` ON `softwares`.`HARDWARE_ID` = `hardware`.`ID`
WHERE `softwares`.`NAME` = 'VNC')
LIMIT 0 , 30
Encore merci de ton aide
#1052 - Column 'NAME' in where clause is ambiguous . Il faut lui spécifier la table...puis après c'est au tour de "ID"...Donc j'ai modifié 2-3 trucs, et ça donne ceci qui fonctionne à merveille:
SELECT DISTINCT `USERID`
FROM `softwares`
INNER JOIN `hardware` ON `softwares`.`HARDWARE_ID` = `hardware`.`ID`
WHERE `hardware`.`USERID` NOT IN ( SELECT `USERID` FROM softwares
INNER JOIN `hardware` ON `softwares`.`HARDWARE_ID` = `hardware`.`ID`
WHERE `softwares`.`NAME` = 'VNC')
LIMIT 0 , 30
Encore merci de ton aide