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

Schéma Discussion :

Maintenance de camions


Sujet :

Schéma

  1. #621
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    De toute façon ça ne corrige pas toute la base de donnée où Il doit avoir une lettre majuscule pour la première lettre des mots…. Et je veux que ça soit bien saisie dans la base de données, c'est plus propre et plus facile de s'y retrouver...
      0  0

  2. #622
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Vous êtes rapide



    Citation Envoyé par fsmrel Voir le message
    Bien vu ! on répare :

            , CASE lower(AxleType)
                  WHEN ('front') THEN 'Front'
                  WHEN ('2ndfront') THEN '2NDFront'
                  WHEN ('2ndforward') THEN '2NDForward'
                  WHEN ('3rdforward') THEN '3RDForward'
                  WHEN ('rear') THEN 'Rear'
                  WHEN ('pusher') THEN 'Pusher'
                  WHEN ('tag') THEN 'Tag'
                  ELSE '??'
              END AS AxleType
    
      0  0

  3. #623
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Petite question…….


    Dans AxleType nous avons 2NDForward et 3RDForward..... Le problème c'est que les 2NDForward et 3RDForward sont identiques…. Donc si j'enlève le 3RDForward d'un Camion et que je l'installe sur un Tandem avec un Rear qui a les mêmes caractéristiques…. il ne sera pas identifié au bon endroit dans notre Vue 'AXLE_CAMION_INSTALL' ????? L'utilisateur devra le renommer en 2NDForward ????
      0  0

  4. #624
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil Voir le message
    Petite question…….
    Dans AxleType nous avons 2NDForward et 3RDForward..... Le problème c'est que les 2NDForward et 3RDForward sont identiques…. Donc si j'enlève le 3RDForward d'un Camion et que je l'installe sur un Tandem avec un Rear qui a les mêmes caractéristiques…. il ne sera pas identifié au bon endroit dans notre Vue 'AXLE_CAMION_INSTALL' ????? L'utilisateur devra le renommer en 2NDForward ????
    Selon la logique du système et pour que ça fasse plus propre, oui, l'utilisateur devrait le renommer en 2NDForward, même si ça n’est pas essentiel, sinon on pourrait plus tard se poser des questions sur la présence d’un 3RDForward sur le tandem... Cela dit, avant d’entériner cela sous la forme d’une règle de gestion gravée dans le marbre, on va d’abord regarder les conséquences sur l’historique, c’est-à-dire la désinstallation/installation des essieux.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  5. #625
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Pour l'instant on ne change rien….. peut-être qu'on pourra le renommer avec un trigger plus tard ??? ou l'utilisateur le renommera…. Pour l'instant ça ne cause pas de problème…. On passe à la prochaine étape. Donc vous pouvez mettre à jour DZINDZIO_TRUCKS_MANAGEMENT_TEMP avec ce que vous venez de terminer… Ça semble fonctionner très bien….

    Citation Envoyé par fsmrel Voir le message
    Selon la logique du système et pour que ça fasse plus propre, oui, l'utilisateur devrait le renommer en 2NDForward, même si ça n’est pas essentiel, sinon on pourrait plus tard se poser des questions sur la présence d’un 3RDForward sur le tandem... Cela dit, avant d’entériner cela sous la forme d’une règle de gestion gravée dans le marbre, on va d’abord regarder les conséquences sur l’historique, c’est-à-dire la désinstallation/installation des essieux.
      1  0

  6. #626
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil
    vous pouvez mettre à jour DZINDZIO_TRUCKS_MANAGEMENT_TEMP avec ce que vous venez de terminer…
    Je ne le fais pas tout de suite, j’ai d’abord des fusions de données et de code à faire et à vérifier, sinon ça va être le bazar…
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  7. #627
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Ok mais n'oubliez pas d'aller au lit hahaha

    Citation Envoyé par fsmrel Voir le message
    Je ne le fais pas tout de suite, j’ai d’abord des fusions de données et de code à faire et à vérifier, sinon ça va être le bazar…
      0  0

  8. #628
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    D'accord ! Mais j'espère que je ne rêverai pas que je monterai des essieux, pauvres camions !
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  9. #629
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Vous avez quand même fait des recherches sur les essieux et les différentiels LoL… Vous en connaissez maintenant plus que la majorité des chauffeurs de camions à ce sujet….


    Citation Envoyé par fsmrel Voir le message
    D'accord ! Mais j'espère que je ne rêverai pas que je monterai des essieux, pauvres camions !
      0  0

  10. #630
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonjour Ordigil,

    Citation Envoyé par ordigil Voir le message
    Petite question…….
    Dans AxleType nous avons 2NDForward et 3RDForward..... Le problème c'est que les 2NDForward et 3RDForward sont identiques…. Donc si j'enlève le 3RDForward d'un Camion et que je l'installe sur un Tandem avec un Rear qui a les mêmes caractéristiques…. il ne sera pas identifié au bon endroit dans notre Vue 'AXLE_CAMION_INSTALL' ????? L'utilisateur devra le renommer en 2NDForward ????
    A la réflexion, puisque physiquement (à leur usure près...) il n’y a aucune différence entre des essieux qu’on a qualifiés soit de 2NDForward, soit de 3RDForward simplement parce qu’ils sont placés l’un derrière l’autre, je propose de remplacer dans la table AXLE les types '2NDForward' et '3RDForward' par le seul type 'Forward'.

    Ainsi, le tableau a l’allure suivante pour le camion #426 :



    Mais, grâce à la valeur prise par la colonne PositionCode, il est évidemment qu’on a le loisir de traduire mentalement {'Forward', '1INTGAWR'} par {'2NDForward', '1INTGAWR'} et {'Forward', '2INTGAWR'} par {'3RDForward', '2INTGAWR'}.


    Cela vous convient-il ?

    Autre question : combien prévoyez-vous qu’on puisse placer au maximum de pushers devant le(s) forward(s) ?
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  11. #631
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut Bonjourd fsmrel :-)
    Si vous regardez sur les étiquettes de Freightliner, il n'y a pas de 2NDforward et de 3RDForward.... Nous les qualifions mentalement Nous appliquerons la méthode de Freightliner à tous les manufacturiers….

    Sur les photos des camions, on voit que le nombre maximum de pushers semble être 4... car au Canada nous sommes limité par la longueur du camion et le wheelbase( 244 pouces )... Il y a des exceptions et des permits spéciaux mais il se pourrait que même si vous êtes légal dans une province, vous pourriez être illégal dans une autre… Donc règle général, on ajoute 2 pushers….. certain trucks en ont 4.... Pour l'instant je dirais le max de pushers est 4....




    Citation Envoyé par fsmrel Voir le message
    Bonjour Ordigil,



    A la réflexion, puisque physiquement (à leur usure près...) il n’y a aucune différence entre des essieux qu’on a qualifiés soit de 2NDForward, soit de 3RDForward simplement parce qu’ils sont placés l’un derrière l’autre, je propose de remplacer dans la table AXLE les types '2NDForward' et '3RDForward' par le seul type 'Forward'.

    Ainsi, le tableau a l’allure suivante pour le camion #426 :



    Mais, grâce à la valeur prise par la colonne PositionCode, il est évidemment qu’on a le loisir de traduire mentalement {'Forward', '1INTGAWR'} par {'2NDForward', '1INTGAWR'} et {'Forward', '2INTGAWR'} par {'3RDForward', '2INTGAWR'}.


    Cela vous convient-il ?

    Autre question : combien prévoyez-vous qu’on puisse placer au maximum de pushers devant le(s) forward(s) ?
      1  0

  12. #632
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil
    Si vous regardez sur les étiquettes de Freightliner, il n'y a pas de 2NDforward et de 3RDForward.... Nous les qualifions mentalement Nous appliquerons la méthode de Freightliner à tous les manufacturiers...
    D’accord, j’entérine (de lapin , of course) : je remplace donc dans la table AXLE les types '2NDForward' et '3RDForward' par le seul type 'Forward', c’est le minimum syndical.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  13. #633
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Cette base de données est comme un casse-tête géant en mutation perpétuelle Et notre belle vue CAMION_COMPOSITION que vous devrez refaire… Vous êtes vraiment un adepte des BD

    Citation Envoyé par fsmrel Voir le message
    D’accord, j’entérine (de lapin , of course) : je remplace donc dans la table AXLE les types '2NDForward' et '3RDForward' par le seul type 'Forward', c’est le minimum syndical.
      0  0

  14. #634
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Aujourd'hui était ma journée musique, je regarderai les essieux plus tard...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  15. #635
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Bonjour Ordigil,


    Citation Envoyé par ordigil Voir le message
    Et notre belle vue CAMION_COMPOSITION que vous devrez refaire...
    Ça me permet de m’entraîner...

    Avant de passer à la vue CAMION_COMPOSITION, il y en a d’autres à modifier, sur lesquelles s’appuie sa sœur, CAMION_COMPOSITION_V. Comme je n’ai pas encore créé le trigger qui s’assure de la cohérence du type d’essieu et du type de différentiel, je fais figurer les anomalies dans les résultats. A cet effet, j’ai créé un différentiel de type 'forward' installé sur un essieu de type 'front' (balek les engrenages !)
    Par ailleurs, on voit dans le résultat les camions avec des essieux sans différentiels.

    --------------------------------------------------------
    -- différentiel 'front' installé sur un essieu 'front'
    --------------------------------------------------------
    INSERT INTO DIFFERENTIAL_COMPOSANT_V (NumeroSerie, DateAchat, Fabriquant, Modele
                                        , DiffType, Ratio, GVWR, Torque, Lock, PDLock, Serie)
        SELECT 'diffFront16156', (SELECT DateAchat FROM AXLE_COMPOSANT_V WHERE NumeroSerie = 'FRONT16156'), 'Meritor', 'DIFF 40' 
                 , 'front', 374, 2000, 1000, 'Y', 'N', 'Meritor série 1'  
    ;
    INSERT INTO DIFF_AXLE (DiffId, DiffInstalDate, DiffDesInstalDate, AxleId)
        SELECT  DiffId, (SELECT DateAchat FROM AXLE_COMPOSANT_V WHERE NumeroSerie = 'FRONT16156'), '9999-12-31'
              , (SELECT ComposantId FROM AXLE WHERE AxleSerialNumber = 'FRONT16156')
        FROM    DIFFERENTIAL AS x 
        WHERE   DiffSerialNumber = 'diffFront16156'
    ;
    --------------------------------------------------------------
    -- différentiel non 'front' installé sur un essieu 'front'...
    --------------------------------------------------------------
    INSERT INTO DIFFERENTIAL_COMPOSANT_V (NumeroSerie, DateAchat, Fabriquant, Modele
                                        , DiffType, Ratio, GVWR, Torque, Lock, PDLock, Serie)
        SELECT 'diffFront14414', (SELECT DateAchat FROM AXLE_COMPOSANT_V WHERE NumeroSerie = 'FRONT14414'), 'Meritor', 'DIFF 40' 
                 , 'forward', 374, 2000, 1000, 'Y', 'N', 'Meritor série 1'  
    ;
    
    INSERT INTO DIFF_AXLE (DiffId, DiffInstalDate, DiffDesInstalDate, AxleId)
        SELECT  DiffId, (SELECT DateAchat FROM AXLE_COMPOSANT_V WHERE NumeroSerie = 'FRONT14414'), '9999-12-31'
              , (SELECT ComposantId FROM AXLE WHERE AxleSerialNumber = 'FRONT14414')
        FROM    DIFFERENTIAL AS x 
        WHERE   DiffSerialNumber = 'diffFront14414'
    

    Je n’ai toujours pas modifié les bases de données. Avant que j’aille plus loin dans les mises à niveau des objets, que pensez-vous de la vue CAMION_FRONT_V ?

    GO
    CREATE VIEW CAMION_FRONT_V (CamionVIN, CamionNumber, FrontAxleSerialNumber
                              , AxleInstallationDate, FrontNumeroSerie, FrontInstallationDate, DiffType) 
    AS
    ----------------------------------------------------------------------------------------------------
    -- Pour chaque paire {camion, essieu} on récupère la date la plus récente d'installation d'essieu.
    -- on ne considère que les essieux de type 'front'.
    -----------------------------------------------------------------------------------------------------       
    WITH t1 AS (
                SELECT DISTINCT k.CamionVIN, k.CamionNumber, LocalisationId, MAX(ComposantInstallationDate) AS AxleInstallationDate, y.ComposantId 
                FROM   CAMION AS x JOIN COMPOSANT_AFFECTATION AS y ON x.CamionId = y.LocalisationId
                                   JOIN AXLE AS z ON y.ComposantId = z.ComposantId    -- pour ne considérer que les essieux 
                                   JOIN COMPOSANT AS t ON t.ComposantId = y.ComposantId
                WHERE LOWER(AxleType)  = 'front'
                GROUP BY LocalisationId, CamionVIN, CamionNumber, y.ComposantId
               )
    --------------------------------------------------------------------------
    -- Pour chaque différentiel, on récupère la date la plus récente 
    -- d'installation sur essieu. Afin d'intercepter les différentiels
    -- de type non 'front' installés sur des essieux de type 'front',
    -- on ne filtre pas sur le type 'front'...
    -- Quand on aura créé le contrôle de cohérence des différentiels et des 
    -- essieux, on pourra activer le filtre...
    --------------------------------------------------------------------------- 
    , t2 AS (
             SELECT y.AxleId, MAX(DiffInstalDate) AS theDiffInstalDate
             FROM   DIFF_AXLE AS y JOIN DIFFERENTIAL AS z ON z.DiffId = y.DiffId 
    ------         WHERE  LOWER(DiffType) = 'front'  -- filtrage des différentiels
             GROUP BY y.AxleId
            )
    ----------------------------------------------------------------------------------------------------------
    -- Pour chaque différentiel 'front' le plus récemment installé sur essieu, on récupère les informations
    -- obtenues via les variables t1, t2, à savoir le CamionVIN, le CamionNumber, et tant qu'à faire, le
    -- numéro de série et la date d'installation de l'essieu hébergeant le différentiel. 
    -- Si un essieu 'front' n'a pas de différentiel, au résultat la colonne FrontNumeroSerie est forcée à 0. 
    -- Si un différentiel 'front' n'est pas sur un essieu (gloups !) il n'est sur aucun camion : 
    -- il ne figure pas dans le résultat...  
    ----------------------------------------------------------------------------------------------------------- 
    , t3 AS (
             SELECT DISTINCT k.CamionVIN, k.CamionNumber, t1.ComposantId, x.DiffId
                           , AxleSerialNumber, AxleInstallationDate
                           , DiffSerialNumber, theDiffInstalDate AS DiffInstallationDate, DiffType
             FROM   t1 JOIN AXLE AS z ON t1.ComposantId = z.ComposantId
                      LEFT JOIN t2 ON t1.ComposantId = t2.AxleId
                      FULL JOIN DIFF_AXLE as x on t2.Axleid = x.Axleid AND DiffInstalDate = theDiffInstalDate 
                      LEFT JOIN DIFFERENTIAL as y on x.DiffId = y.DiffId
                      JOIN CAMION AS k ON k.CamionVIN = t1.CamionVIN
            ) 
    SELECT CamionVIN, CamionNumber
         , COALESCE(AxleSerialNumber, '0') AS AxleSerialNumber, COALESCE(AxleInstallationDate, '9999-12-31') AS AxleInstallationDate
         , COALESCE(DiffSerialNumber, '0') AS DiffSerialNumber, COALESCE(DiffInstallationDate, '9999-12-31') AS DiffInstallationDate
         , COALESCE(DiffType, '0') AS DiffType   
    FROM   t3
    ;
    GO
    

    SELECT * FROM CAMION_FRONT_V
    

    Comme disait Pénélope, à suivre !
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  16. #636
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut Bonjour fsmrel :-)
    Désolé si vous avez perdu la connection à mon serveur SQL… J'ai upgradé la carte réseau pour que la connection soit plus rapide…. Veuillez vérifiez si tout est correct dans votre BD
      0  0

  17. #637
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Vous ne faites pas de distinction entre un différentiel Front et un Forward ????
      0  0

  18. #638
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    ah ok les explications vous les avez données hehehe…… Il n'y a pas d'urgence pour la vue CAMION_COMPOSITION.... On s'assure que tout est en ordre et ensuite vous la créerez. J'ai hâte de vour lorsque tous les essieux et différentiels seront terminés
      0  0

  19. #639
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 002
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 8 002
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Je crois savoir qu’il y a une différence entre front et forward

    Je ne touche toujours pas aux bases, car c’est un peu (beaucoup) le bazar dans mes fichiers...

    Mais que cela ne vous empêche pas de tester la vue CAMION_FRONT_V, car j’ai besoin de savoir comment elle se comporte chez vous, là-bas dans les neiges...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.
      1  0

  20. #640
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Avez-vous mis à jour DZINDZIO_TRUCKS_MANAGEMENT_TEMP ???? pour que je puisse m'amuser un peu ?????







    Citation Envoyé par fsmrel Voir le message
    Je crois savoir qu’il y a une différence entre front et forward

    Je ne touche toujours pas aux bases, car c’est un peu (beaucoup) le bazar dans mes fichiers...

    Mais que cela ne vous empêche pas de tester la vue CAMION_FRONT_V, car j’ai besoin de savoir comment elle se comporte chez vous, là-bas dans les neiges...
      0  0

Discussions similaires

  1. Ajout dans une table et relation avec d'autres
    Par climz dans le forum Access
    Réponses: 5
    Dernier message: 12/05/2006, 15h32
  2. Création table et relations
    Par ptitdragon_eric dans le forum Langage SQL
    Réponses: 3
    Dernier message: 10/09/2005, 13h37
  3. table de relation
    Par tanjonaravelson dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 21/06/2005, 18h20
  4. Table de relation et sélection via jointure
    Par 73672 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 09/11/2004, 09h33
  5. Problème avec mes tables de relation...
    Par mmike dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/06/2003, 15h16

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