IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Problème SQL dans une base Oracle


Sujet :

SQL Oracle

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Problème SQL dans une base Oracle
    Bonjour à tous,

    J’ai une question concernant une requête sql dans une base Oracle.
    J’ai une table
    PRODUIT EXEMPLAIRE
    __A________001
    __A________002
    __A________003
    PRODUIT PERSONNE DEPART ARRIVE EXEMPLAIRE
    ___A______NULL___1117___1120____NULL
    ___A______NULL___1117___1120____NULL
    ___A______NULL___1120___1110____NULL
    ___A______NULL___1120___1110____NULL
    ___A______PERS1__1110___NULL____001


    Un produit a plusieurs exemplaires. Un exemplaire est destiné a une personne. Je connais l’exemplaire (001) qui est destiné à la personne (PERS1). Je sais également qui a donné à cette personne (1110). Il y a plusieurs étapes de passation et mon objectif est de tracer le chemin parcouru par l'exemplair du produit.
    J’ai pensé à faire la requête suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    UPDATE Transfert a SET a.Exemplaire =         
          (SELECT DISTINCT b.Exemplaire           
          FROM Transfert b           
          WHERE a.Produit = b.Produit          
          AND a.Arrive = b.Depart           
          AND b.Exemplaire IS NOT NULL          
          AND ROWNUM = 1)  
    WHERE a.Exemplaire IS NULL;
    Le problème c’est qu’il me fait une boucle infinie. Auriez-vous une solution ?


    Merci d’avance pour votre aide

  2. #2
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    Salut,

    Quelle est le résultat attendu pour ton jeu de données ?
    (Pourquoi y a-t-il des doublons ? N'y a-t-il une donnée qui indique quel est l'ordre des étapes ?)

    (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/

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Tout d'abord merci pacmann pour l'intérêt que tu portes à mon problème.

    Effectivement, le problème c'est qu'il n'y a pas d'indicateur d'ordre.

    Le résultat attendu est :
    PRODUIT PERSONNE DEPART ARRIVE EXEMPLAIRE
    ___A______NULL___1117___1120____NULL
    ___A______NULL___1117___1120____NULL
    ___A______NULL___1120___1110____NULL
    ___A______NULL___1120___1110____001
    ___A______PERS1__1110___NULL____001
    et le prochain étape
    PRODUIT PERSONNE DEPART ARRIVE EXEMPLAIRE
    ___A______NULL___1117___1120____NULL
    ___A______NULL___1117___1120____001
    ___A______NULL___1120___1110____NULL
    ___A______NULL___1120___1110____001
    ___A______PERS1__1110___NULL____001

    S'il y aurait eu deux exemplaires en circulation, ce serai:

    Etape1:
    PRODUIT PERSONNE DEPART ARRIVE EXEMPLAIRE
    ___A______NULL___1117___1120____NULL
    ___A______NULL___1117___1120____NULL
    ___A______PERS2__1120___1110____002
    ___A______NULL___1120___1110____NULL
    ___A______PERS1__1110___NULL____001

    Etape2
    PRODUIT PERSONNE DEPART ARRIVE EXEMPLAIRE
    ___A______NULL___1117___1120____002
    ___A______NULL___1117___1120____NULL
    ___A______PERS2__1120___1110____002
    ___A______NULL___1120___1110____001
    ___A______PERS1__1110___NULL____001

    Etape3
    PRODUIT PERSONNE DEPART ARRIVE EXEMPLAIRE
    ___A______NULL___1117___1120____002
    ___A______NULL___1117___1120____001
    ___A______PERS2__1120___1110____002
    ___A______NULL___1120___1110____001
    ___A______PERS1__1110___NULL____001

Discussions similaires

  1. Réponses: 4
    Dernier message: 05/08/2011, 17h19
  2. Problème création de schéma XML dans une base oracle
    Par el_conkeror dans le forum Oracle
    Réponses: 7
    Dernier message: 19/03/2010, 15h54
  3. Problème de connexion à une base oracle avec SQL PLUS en mode graphique
    Par Bayfall dans le forum Connexions aux bases de données
    Réponses: 0
    Dernier message: 24/01/2010, 17h34
  4. probléme de requete SQl dans une base SQL Server
    Par sasuma dans le forum Développement
    Réponses: 7
    Dernier message: 09/05/2009, 17h09
  5. Réponses: 4
    Dernier message: 24/02/2006, 10h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo