Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/02/2012, 18h25   #1
Invité de passage
 
Homme
Inscription : février 2012
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : février 2012
Messages : 6
Points : 2
Points : 2
Par défaut Créer une table à partir des résultats d'un DELETE ?

Bonjour,

Je travaille sous PL/SQL.

Comment créer une table à partir des résultats d'un DELETE ?
J'ai une table table_de_départ, je DELETE certaines lignes de cette table qui remplissent certaines conditions, et je voudrais ensuite rappeler le résultat de ce DELETE dans une autre procédure (par exemple après un MINUS, ou même un SELECT) d'où le besoin de créer une table.

Merci pour votre aide.

Pour remettre dans le contexte :
Dans la procédure ci-dessous, je fais 2 'Delete' "imbriqués" :
'table_deleted' est le résultat d'un premier DELETE de Table_de_départ (c'est l'objet de ma question)
Je veux supprimer les id de ma table intermédiaire qui sont ressortis dans les résultats du premier DELETE (avec conditions) de ma table de départ.

Code SQL :
1
2
3
4
5
6
    DELETE FROM ( 
                   WITH table_intermédiaire AS (SELECT * FROM Table_de_départ
                                                     MINUS  (Table_deleted) 
                                                  )
                   )                           
             WHERE Table_de_départ.id IN table_intermédiaire
Etienne812 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2012, 20h07   #2
Membre Expert
 
Avatar de pacmann
 
Homme Pacman Pacman
Business analyst
Inscription : juin 2004
Messages : 1 417
Détails du profil
Informations personnelles :
Nom : Homme Pacman Pacman
Âge : 31
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Business analyst
Secteur : Finance

Informations forums :
Inscription : juin 2004
Messages : 1 417
Points : 2 309
Points : 2 309
Salut,

Peut être créer une table et l'alimenter avec un trigger before delete ?
__________________

(c'est ma photo)
Paku, Paku !
Pour les jeunes incultes : non, je ne suis pas un pokémon...

Le pacblog : http://pacmann.over-blog.com/
pacmann est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/02/2012, 09h30   #3
Membre Expert
 
Avatar de Garuda
 
Homme Philippe CHIRCOP
Chef de projet
Inscription : juin 2007
Messages : 1 109
Détails du profil
Informations personnelles :
Nom : Homme Philippe CHIRCOP
Localisation : France

Informations professionnelles :
Activité : Chef de projet
Secteur : Bâtiment

Informations forums :
Inscription : juin 2007
Messages : 1 109
Points : 1 559
Points : 1 559
Ou utiliser
Code :
1
2
 
DELETE FROM .. WHERE ...RETURNING ... BULK COLLECT INTO ...
__________________
Garuda गरूड
Brahmâ la Guerre et Vishnu la Paix

Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010
Garuda est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 10/02/2012, 11h44   #4
Invité de passage
 
Homme
Inscription : février 2012
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : février 2012
Messages : 6
Points : 2
Points : 2
Merci pacmann et Garuda, je suis débutant sur SQL, pouvez-vous expliciter vos réponses ? J'ai fait des recherches mais je n'arrive pas à utiliser vos indications.
Etienne812 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/02/2012, 16h15   #5
Invité de passage
 
Homme
Inscription : février 2012
Messages : 6
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : février 2012
Messages : 6
Points : 2
Points : 2
J'ai créé une autre discussion où j'expose plus en détail le contexte dans lequel s'inscrit cette requête :
supprimer un groupe sur la base d'un critère rempli par un membre du groupe :
http://www.developpez.net/forums/d11...membre-groupe/

Cette autre discussion m'a apporté la solution, du coup je ferme celle-ci.

Merci.
Etienne812 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h42.


 
 
 
 
Partenaires

Hébergement Web