Problème de requete sql avec DELETE et select
flach
-
P@t@ch0n Messages postés 603 Statut Membre -
P@t@ch0n Messages postés 603 Statut Membre -
Bonjour,
je voudrai savoir comment résoudre se problème :
j'ai une requête qui est la suivante :
SELECT id_requete,
( SELECT ip FROM machine WHERE id_machine = id_machine_src ) AS ip_src ,
( SELECT ip FROM machine WHERE id_machine = id_machine_des ) AS ip_des
FROM requete
GROUP BY ip_src, ip_des
et je voulais supprimer toutes les lignes de la table requete qui ne sont pas pris en compte dans la requete si dessus. J'ai essayé cette structure mais sans résultat :
DELETE FROM `requete` WHERE id_requete not in (SELECT id_requete,
( SELECT ip FROM machine WHERE id_machine = id_machine_src ) AS ip_src ,
( SELECT ip FROM machine WHERE id_machine = id_machine_des ) AS ip_des
FROM requete
GROUP BY ip_src, ip_des)
je voudrai savoir comment résoudre se problème :
j'ai une requête qui est la suivante :
SELECT id_requete,
( SELECT ip FROM machine WHERE id_machine = id_machine_src ) AS ip_src ,
( SELECT ip FROM machine WHERE id_machine = id_machine_des ) AS ip_des
FROM requete
GROUP BY ip_src, ip_des
et je voulais supprimer toutes les lignes de la table requete qui ne sont pas pris en compte dans la requete si dessus. J'ai essayé cette structure mais sans résultat :
DELETE FROM `requete` WHERE id_requete not in (SELECT id_requete,
( SELECT ip FROM machine WHERE id_machine = id_machine_src ) AS ip_src ,
( SELECT ip FROM machine WHERE id_machine = id_machine_des ) AS ip_des
FROM requete
GROUP BY ip_src, ip_des)
A voir également:
- Problème de requete sql avec DELETE et select
- Hiberfil.sys delete - Guide
- Just delete me - Guide
- Please select boot device - Forum Matériel & Système
- Logiciel sql - Télécharger - Bases de données
- Delete boot option - Forum BIOS
4 réponses
merci j'ai trouvé la solution problème résolue.
j'ai placé le résultat de m'a première requete dans une table temporère ensuite j'ai comparé les identifier de mes deux tables si l'identifient était différent lors je supprimé la ligne dans la table requete.
première étape :
insert into temp_requete (id_requete, ip_src, ip_des)
SELECT id_requete,
( SELECT ip FROM machine WHERE id_machine = id_machine_src ) AS ip_src ,
( SELECT ip FROM machine WHERE id_machine = id_machine_des ) AS ip_des
FROM requete
GROUP BY ip_src, ip_des
seconde étape :
DELETE FROM requete WHERE id_requete not in (SELECT id_requete from temp_requete)
j'ai placé le résultat de m'a première requete dans une table temporère ensuite j'ai comparé les identifier de mes deux tables si l'identifient était différent lors je supprimé la ligne dans la table requete.
première étape :
insert into temp_requete (id_requete, ip_src, ip_des)
SELECT id_requete,
( SELECT ip FROM machine WHERE id_machine = id_machine_src ) AS ip_src ,
( SELECT ip FROM machine WHERE id_machine = id_machine_des ) AS ip_des
FROM requete
GROUP BY ip_src, ip_des
seconde étape :
DELETE FROM requete WHERE id_requete not in (SELECT id_requete from temp_requete)