Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1221 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Résolu] [MySQL] Comparaison entre 2 tables

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu] [MySQL] Comparaison entre 2 tables

n°1395220
masterlolo
Posté le 26-06-2006 à 18:44:06  profilanswer
 

Bonjour,
 
Ma requete est pas facile à expliquer...  
Je souhaiterai faire une comparaison entre 2 tables et n'avoir en réponse que si elle n'existe pas dans la 2eme table....
 
Un petit exemple sera peut etre plus compréhensible :
On commence par le détail des 2 tables mysql :
 
Table ip
champs : indexip, ip
exemple : 1, 192.168.2.11
exemple : 2, 192.168.2.12
exemple : 3, 192.168.2.13
 
Table serveur  
champs : indexserveur, ip, hostname
exemple : 1, 192.168.2.11, serveur-mail
exemple : 2, 192.168.2.12, serveur-pop
exemple : 3, 192.168.2.13, serveur-http
exemple : 4, 192.168.2.14, serveur-mysql
 
Je souheterai dans ce cas, avoir comme réponse l'exemple "4, 192.168.2.14, serveur-mysql" car il n'est pas référencé dans la table ip
Quelqu'un as t'il une idée de la requete ?


Message édité par masterlolo le 26-06-2006 à 21:36:40
mood
Publicité
Posté le 26-06-2006 à 18:44:06  profilanswer
 

n°1395234
thierryR
J'aime les bretzels
Posté le 26-06-2006 à 19:06:28  profilanswer
 

Pourrais tu essayer ceci:
 
select * from Table serveur
inner join Table ip on Table ip.ip=Table serveur.ip
where Table ip.ip is null

n°1395309
polo021
Posté le 26-06-2006 à 21:16:30  profilanswer
 

la fonnction EXISTS n'existe pas en mysql?

n°1395313
thierryR
J'aime les bretzels
Posté le 26-06-2006 à 21:21:36  profilanswer
 
n°1395314
masterlolo
Posté le 26-06-2006 à 21:22:06  profilanswer
 

thierryR a écrit :

Pourrais tu essayer ceci:
 
select * from Table serveur
inner join Table ip on Table ip.ip=Table serveur.ip
where Table ip.ip is null


Aucun résultat sur ma requete
Par contre si je supprime la condition where, voici le résultat :
 
indexserveur ip hostname indexip ip  
1 192.168.2.11 mail 1 192.168.2.11  
2 192.168.2.12 pop 2 192.168.2.12  
3 192.168.2.13 http 3 192.168.2.13  

Code :
  1. requête SQL:
  2. SELECT *
  3. FROM serveur
  4. INNER JOIN ip ON ip.ip = serveur.ip
  5. WHERE ip.ip IS NULL

n°1395321
masterlolo
Posté le 26-06-2006 à 21:33:10  profilanswer
 

Trouvé !  

Code :
  1. SELECT * FROM serveur
  2. WHERE serveur.ip NOT IN (SELECT ip.ip FROM ip)


 
La réponse est bien :
indexserveur  ip  hostname  
4 192.168.2.14 mysql  
 
Merci beaucoup de l'aide, je connaissait pas INNER JOIN... j'aurai au moins apris quelque chose ce soir

n°1395326
thierryR
J'aime les bretzels
Posté le 26-06-2006 à 21:37:36  profilanswer
 

tu utilises quelle version de mysql ?

n°1395331
masterlolo
Posté le 26-06-2006 à 21:42:49  profilanswer
 

MySQL 4.1.9

n°1395340
thierryR
J'aime les bretzels
Posté le 26-06-2006 à 21:45:39  profilanswer
 

Ha.... Ben là, tu m'as aussi appris quelque chose.

WHERE serveur.ip NOT IN (SELECT ip.ip FROM ip)

n°1395347
masterlolo
Posté le 26-06-2006 à 21:51:27  profilanswer
 

J'ai trouvé ça un peu par hasard en lisant le manuel mysql : http://dev.mysql.com/doc/refman/5. [...] eries.html

mood
Publicité
Posté le 26-06-2006 à 21:51:27  profilanswer
 

n°1395365
polo021
Posté le 26-06-2006 à 22:23:10  profilanswer
 

pour le exists c'est  
 
   
      SELECT * FROM serveur
      WHERE NOT exists (SELECT * from ip where serveur.ip= ip.ip)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [Résolu] [MySQL] Comparaison entre 2 tables

 

Sujets relatifs
Probleme de jointure MySQL[resolu]enregister un fichier xls mis a jour.
question bizarre résolu ![RESOLU] afficher une liste sauf un
[ résolu ] SDL_image.h => sous dev-C++[RESOLU][HTML]Video en streaming
[résolu]Problème avec scanf[MYSQL] --> droits utilisateur
[RESOLU] Mettre un Objet comme attribut d'un autre Objetjointure mysql
Plus de sujets relatifs à : [Résolu] [MySQL] Comparaison entre 2 tables


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR