Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de requete

    2 janvier 2024 à 12:53:03

    Bonjour et merci à tous ceux qui s'inquiètent de mon problème. Mon problème se résume ainsi :
    * A et B représentent les billes
    *le parc 1 et le parc 6 représentent les lieux de stockage
    * à la date du 12/12/2023 les grumes sont chargées sur un camion au parc 1 pour une destination au parc 6
    * le 14/12/2023 ces billes arrivent dans le parc 6.
    *ces balles sont rechargées sur un camion (Lettre_Voiture) au parc 6 le 18/12/2023 pour une destination en parc 1.
    * ils arriveront au parc 1 le 20/12/2023
    Comme tableau nous avons :
    -/ Lettre_voiture
    -/ Lettre_voiture_ligne
    -/ Bille
    -/ préparation_pied
    Bille = Preparation_pied car idprepration_pied est dans Bille
    Attention :
    - donc sur un camion il y a la date de départ et la date d'arrivée. il y a aussi le parc de départ et le parc de destination
    - c'est le bordereau camion que l'on appelle Letter_Voiture et les lignes qui se trouvent sur ce bordereau s'appellent letter_Voiture_ligne. mais chaque facture déposée sur ce bordereau est liée à la letter_voiture_ligne
    - il nous faut maintenant connaître le nombre de grumes qu'il y a dans le parc 1 à la date du 20/12/2023 en tenant compte du mouvement qu'ont fait ces grumes à travers les camions
    - également à cette même date (20/12/2023) il faut savoir ce que nous avons sur le parc 6
    - il faut tenir compte du fait qu'à partir d'aujourd'hui (20/12/2023) il y a des billes qui sont arrivées dans le parc 1 et aussi il peut y avoir des billes qui pourront quitter le parc 1 le même jour.

    -
    Edité par AristideMengue 3 janvier 2024 à 16:27:46

    • Partager sur Facebook
    • Partager sur Twitter
    l'effort dépend de la volonté de chacun de nous
      2 janvier 2024 à 19:16:45

      Bonjour,

      Vous donnez un énoncé, mais vous n'indiquez pas le problème rencontré en exécutant votre requête (message d'erreur, résultat non attendu, ...)

      • Partager sur Facebook
      • Partager sur Twitter

      Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
      La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

        3 janvier 2024 à 7:57:38

        Merci @fred1599 dans cette requête le problème est qu'il fonctionne pour le parc 6 à la date du 20/12/2023 mais pas pour le parc 1. hors le resultat attendu est que sur le parc 6 à la date du 20/12/2023 on ne devrait avoir aucune bille de bois ce qui est normal car les billes ont quitté ce parc à la date du 18/12/2023. Par contre, sur le parc 1 à la date du 20/12/2023 on devrait avoir ces deux billes car elles sont arrivées sur ce parc le 20/12/2023. donc en gros dans cette requête seul les parcs qui changent.

        merci

        • Partager sur Facebook
        • Partager sur Twitter
        l'effort dépend de la volonté de chacun de nous
          3 janvier 2024 à 10:01:09

          À mon sens, c'est un problème de condition, si je modifie la commande WHERE de cette manière

          WHERE
              (LV.datearriverlv <= '2023-12-20' AND LV.lieuxarrive = 6)
              OR
              (LV.datearriverlv = '2023-12-20' AND LV.lieuxarrive = 1)
              AND pp.idpreparation not in (select idbille from lettre_voiture_ligne_grume LVR join lettre_voiture_grume LV on LV.idlv = LVR.idlv where LV.lieuxdepart = 6 and LV.datelv <= '2023-12-20')


          À tester !

          • Partager sur Facebook
          • Partager sur Twitter

          Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
          La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

            3 janvier 2024 à 10:23:59

            j'ai essayé cette requête elle marche mais seulement si je mets la date 2023-12-21 pour le parc 1 ça ne fonctionne pas hors les billes étant arrivé sur le parc 1 le 2023-12-20 n'ont pas encore effectué d'autre mouvement donc on devrait les trouver sur ce parc le 21, 22, 23 etc... 

            SELECT distinct b.idpreparation as idb, es.description_essence, pp.codebar_grume, pp.num_colis, b.affectation_bil,l.description_licence, l.idlicence,pp.longueur_prepa as longu
                                    , pp.diam_gb_prepa as GB, pp.diam_pb_prepa as PB, pp.volume_prepa as volume, '','Arrivée par LV' as etat,LV.datelv, LV.datearriverlv as datess, LV.idlv FROM lettre_voiture_ligne_grume LVR
                                    join lettre_voiture_grume LV on LV.idlv = LVR.idlv JOIN billage b ON b.idpreparation = LVR.idbille 
                                    JOIN preparation_pied pp on pp.idpreparation = b.idpreparation 
                                    LEFT JOIN essence es ON es.idessence = pp.idessence
                                    LEFT JOIN licence l on l.idlicence = pp.idlicence
                                    WHERE  LV.lieuxarrive = 1 and
                 				LV.datelv <= '2023-12-20'
            					and (LV.datearriverlv IS NULL OR LV.datearriverlv >= '2023-12-20')



            mais ça ne marche pas.

            qu'est-ce qui pourrait manqué ?

            merci

            -
            Edité par AristideMengue 3 janvier 2024 à 16:25:30

            • Partager sur Facebook
            • Partager sur Twitter
            l'effort dépend de la volonté de chacun de nous
              10 janvier 2024 à 0:50:49

              Ne faudrait-il pas une table Transit qui contiendrait les billes (ou grumes) en transit entre 2 parcs avec les dates de départ et d'arrivée ?
              • Partager sur Facebook
              • Partager sur Twitter
                17 janvier 2024 à 14:31:53

                CristianoRolando a écrit:

                Ne faudrait-il pas une table Transit qui contiendrait les billes (ou grumes) en transit entre 2 parcs avec les dates de départ et d'arrivée ?


                effectivement j'ai une table mouvement qui prend le parc de départ, le parc d'arrivée, la date départ et la date d'arrivée
                • Partager sur Facebook
                • Partager sur Twitter
                l'effort dépend de la volonté de chacun de nous

                Problème de requete

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                • Editeur
                • Markdown