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

 Oracle Discussion :

Données extraites en double : pourquoi ?


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 22
    Points : 14
    Points
    14
    Par défaut Données extraites en double : pourquoi ?
    Bonjour,

    Certaines de mes données extraites apparaissent en double.
    J'ai essayé de mettre un distinct au début de ma requête, mais ça ne marche plus du tout.
    Quelqu'un a-t-il une idée de pourquoi certaines de mes données apparaissent en double?

    Merci d'avance,
    Douchka

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    SELECT ooh.order_number                         "commande n"
    ,hp.party_name                                  "nom dentiste"
    ,msi.segment1                                   "code article"
    ,upper(mut.subinventory_code)                   "stock"
    ,decode(mut.locator_id,-1,null,mil.segment1)    "emplacement"
    ,to_char(ooh.ordered_date,'DD/MM/YYYY')         "ordered date"
    ,to_char(ool.schedule_ship_date,'DD/MM/YYYY')   "schedule ship date"
    ,to_char(ool.promise_date,'DD/MM/YYYY')         "promise date"
    ,trunc(sysdate - ooh.ordered_date)              "nombre jours depuis reception" 
    ,ooh.flow_status_code                           "statut commande"
    ,upper(flv_released.meaning)                    "statut expedition"
    ,ooh.attribute7                                 "blocage commande"
    ,upper(ooh.attribute10)                         "statut ss patient"
    FROM oe_order_headers_all ooh,
         oe_order_lines_all ool,
         wsh_delivery_details wdd,
         fnd_lookup_values flv_released,
         oe_transaction_types_tl ott,
         mtl_system_items msi,
         mtl_unit_transactions mut,
         mtl_item_locations mil,
         hz_cust_site_uses_all hcsus,
         hz_cust_acct_sites_all hcass,
         hz_cust_accounts hcas,
         hz_parties hp
    WHERE ooh.header_id         = ool.header_id
    AND ooh.order_type_id       = ott.transaction_type_id
    AND wdd.source_line_id      = ool.line_id
    AND wdd.released_status     = flv_released.lookup_code
    AND flv_released.lookup_type = 'PICK_STATUS'
    AND flv_released.language   = 'US'
    AND ool.inventory_item_id   = msi.inventory_item_id
    AND msi.organization_id     = 120
    AND ott.language            = 'F'
    AND ooh.order_type_id       = 3435
    AND ooh.org_id              = 119
    AND msi.segment1            IN ('200000','200001','200002')  -- ORTHÈSE  
    AND mut.serial_number       = to_char(ooh.order_number)
    AND mut.locator_id          = mil.inventory_location_id
    AND mil.disable_date        IS NULL
    AND ooh.ship_to_org_id      = hcsus.site_use_id
    AND hcsus.cust_acct_site_id = hcass.cust_acct_site_id
    AND hcass.cust_account_id   = hcas.cust_account_id
    AND hcas.party_id           = hp.party_id
    AND ooh.cancelled_flag      = 'N'
    AND mut.transaction_id      = (SELECT max(mut2.transaction_id)
                                   FROM mtl_unit_transactions mut2
                                   WHERE mut2.serial_number = mut.serial_number)
    AND ool.flow_status_code NOT IN ('CANCELLED','CLOSED')
    AND ((mut.subinventory_code = 'PRODUCTION' and schedule_ship_date <= (sysdate-1))
        OR (mut.subinventory_code = 'LOGISTIQUE')
        OR (ool.promise_date <= (sysdate - 1)) )
    AND (mil.inventory_location_id != -1 OR mil.inventory_location_id = -1 and mil.organization_id = 105)
    --and ooh.order_number = '10013651'
    ORDER BY schedule_ship_date;

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 803
    Points
    30 803
    Par défaut
    Es-tu sur des cardinalités de tes tables ? Y a-t-il toujours une relation 1-1 entre elles ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    Bonjour,

    Non, je ne suis pas sûre de la cardinalité de mes tables, mais même s'il y a plusieurs lignes sur une commande, je ne veux que le numéro de commande (la première donnée extraite, cad : ooh.order_number).
    Y a-t-il moyen de n'avoir qu'une fois le numéro de commande? et pas autant de fois qu'il y a de lignes sur la commande.

    Merci,
    Douchka

  4. #4
    Membre à l'essai
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    Re-bonjour a tous,

    Est-il possible de mettre dans la même requête un distinct dans le select, et un order by dans les conditions?

    Merci,
    Douchka

  5. #5
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 803
    Points
    30 803
    Par défaut
    Citation Envoyé par Douchka Voir le message
    Y a-t-il moyen de n'avoir qu'une fois le numéro de commande? et pas autant de fois qu'il y a de lignes sur la commande.
    Oui, mais quel numéro choisir ? Le plus petit, le plus grand, un autre critère ?
    Citation Envoyé par Douchka Voir le message
    Est-il possible de mettre dans la même requête un distinct dans le select, et un order by dans les conditions?
    Et pourquoi pas ?
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  6. #6
    Membre à l'essai
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 22
    Points : 14
    Points
    14
    Par défaut
    Bon, et bien, je ne sais plus.

    Merci quand même AL1!

    Douchka

  7. #7
    Membre à l'essai
    Femme Profil pro
    Consultant fonctionnel
    Inscrit en
    Juillet 2012
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant fonctionnel
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2012
    Messages : 22
    Points : 14
    Points
    14
    Par défaut Solution problème - nouvelle condition
    Bonjour,

    Finalement, pour éviter la duplication des lignes, une nouvelle condition a été ajoutée, et le problème est réglé.

    Merci pour votre aide!!!!
    Douchka

    nouvelle condition ajoutée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     and wdd.source_code = 'OE'

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. phrase affichée en double: pourquoi?
    Par johnny3 dans le forum Débuter
    Réponses: 2
    Dernier message: 26/02/2009, 17h39
  2. Réponses: 4
    Dernier message: 27/01/2009, 13h34
  3. Importation de données et lignes doubles
    Par danny_67 dans le forum Excel
    Réponses: 2
    Dernier message: 11/05/2007, 17h04
  4. Comment convertir les données extraite d'une jtable ?
    Par jouidos dans le forum Langage
    Réponses: 2
    Dernier message: 11/12/2006, 09h35
  5. Réponses: 4
    Dernier message: 26/08/2006, 02h01

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