Je vé le jetter par la fenetre
cad la table a et b on un champs en commun qui est le champs c
voici la requete que j'utilise:
DELETE FROM b WHERE a.c=b.c Est ce que c'est vrai !!!
gracias
DELETE FROM b WHERE a.c=b.c
Code : Tout sélectionner
DELETE b FROM a WHERE a.c=b.c
J'ai pas tout compris, donc je ne sais pas si l'ordre SQL que te donne fait ce que tu souhaites.Je vé le jetter par la fenetre , je veut supprimer tous les enregistrement d'une table qui n'ont pas la mm valeur qu'un de la deuxième table
cad la table a et b on un champs en commun qui est le champs c
voici la requete que j'utilise:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE a.c<>b.c' at line 1
la mm erreur DELETE FROM phpbb_post_text WHERE phpbb_post.post_id<>phpbb_post_text.post_idCode : Tout sélectionner
create table T2 (id int , a char(20));
insert T2 values (1,'papa');
insert T2 values (2,'maman');
insert T2 values (3,'frere');
insert T2 values (4,'soeur');
create table T1 (id int);
insert T1 values (2);
insert T1 values (3);
select * from T2;
+------+-------+
| id | a |
+------+-------+
| 1 | papa |
| 2 | maman |
| 3 | frere |
| 4 | soeur |
+------+-------+
-- SUPPRESSION
delete T2 from T1 , T2 where T1.id = T2.id;
select * from T2;
+------+-------+
| id | a |
+------+-------+
| 1 | papa |
| 4 | soeur |
+------+-------+
Code : Tout sélectionner
delete T2 from T1 , T2 where T1.id <> T2.id;Code : Tout sélectionner
select T2.* from T1 , T2 where T1.id <> T2.id;Code : Tout sélectionner
delete
from T2
where not exists (select 1 from T1 where T1.id = T2.id);
select * from T2;
+------+-------+
| id | a |
+------+-------+
| 2 | maman |
| 3 | frere |
+------+-------+