Comparaison entre deux table

mb42 Messages postés 553 Statut Membre -  
Droopy_ Messages postés 252 Statut Membre -
Bonjour,

mon travail est sous MYSQL
j'ai deux table

la premiere est nommé "drivers" sa strcture est drivers(type,hardware,letter)
sa creation est ;
CREATE TABLE `drivers` (
`TYPE` varchar(20),
`HARDWARE_ID` int(20),
`LETTER` varchar(20)
) ;
son contenue est;

INSERT INTO `drivers` VALUES ('Removable Drive', 16, 'E:/');
INSERT INTO `drivers` VALUES ('CD-Rom Drive', 16, 'D:/');
INSERT INTO `drivers` VALUES ('Hard Drive', 16, 'C:/');
INSERT INTO `drivers` VALUES ('Removable Drive', 16, 'A:/');

la deuxieme est nommé "imput" sa structure est imput(type,hardware,letter)
sa crteation est ;
CREATE TABLE `imput` (
`TYPE` varchar(20),
`HARDWARE_ID` int(20),
`LETTER` varchar(20)
) ;

son contenue est;

INSERT INTO `imput` VALUES ('CD-Rom Drive', 16, 'D:/');
INSERT INTO `imput` VALUES ('Hard Drive', 16, 'C:/');
INSERT INTO `imput` VALUES ('Removable Drive', 16, 'A:/');

je veut faire une comparaison entre ce deux table

la difference est ;
INSERT INTO `drivers` VALUES ('Removable Drive', 16, 'E:/');

le resultat qui je veut trouver c que apres comparaison entre les deux tables
je supprime de la table `drivers`les contenus communs et laisse seullement
le contenue qui ne se trouve pas dans la table `imput`

donc le contenue de la table `drivers` doit etre comme suit;
INSERT INTO `drivers` VALUES ('Removable Drive', 16, 'E:/');

je veut savoir le script complete qui faire ca

AIDEZ MOI SVP
MERCI D'AVANCE
A voir également:

1 réponse

Droopy_ Messages postés 252 Statut Membre 25
 
Ah enfin quelqu'un qui donne ces définitions de tables en SQL sans qu'on demande, cool...

Bon j'ai testé et j'ai une solution pour toi...
Vérifie quand même pour tous les cas...

L'idée est de supprimer dans drivers toutes les lignes de imput (qu'elles soit présentes où pas).
delete drivers from drivers inner join imput using (`TYPE`,`HARDWARE_ID`,`LETTER`)

Fonctionne à partir de Mysql 4.0.0
0