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

MS SQL Server Discussion :

(SQL200) Afficher le nombre de lignes VS la quantité


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut (SQL200) Afficher le nombre de lignes VS la quantité
    Bonjour à tous,

    Je suis nouveau sur ce forum, mais cela fait bien longtemps que je me renseigne ici quand j'ai des problèmes. Jusqu'à présent je trouvait tout ce que j'avais besoin, mais là je ne trouve pas. Donc voici mon cas.

    J'ai une table qui contient les besoins en pièces pour la production, nous l'appelerons besoins_production. Cette table ressemble à ceci :

    JOB Piece quantité
    ---- ------------- --------
    1 A 5
    1 B 2
    1 C 1
    2 A 3
    3 A 4
    3 B 8
    4 A 8

    J'ai un inventaire pour la piece A de 18, Piece B de 9.

    Ce que je veux faire, c'est un SELECT qui me sort toutes les pièces possibles de sortir selon l'inventaire disponible. Exemple la pièce A, inventaire de 18, besoin réel de 20.

    J'aimerais savoir si c'est possible de faire un select qui me sort le résultat suivant

    JOB Piece quantite_a_sortir
    ---- ------------ ------------------
    1 A 5
    2 A 3
    3 A 4
    4 A 6
    1 B 2
    3 B 7

    Je me figure pas comment je pourrais faire cela. Si quelqu'un à une idée se serais parfait.

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    C'est faisable si vos jobs ont une priorité, c'est à dire que vous considérer que vous pouvez consommer un certains ratio de pièces par rapport à ce que contient l'inventaire suivant la priorité du job...

    @++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut
    Merci,

    Oui ils ont une priorités, pourrais-tu me montrer la marche à suivre pour faire cette requête ?

    Merci à l'avance.

  4. #4
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Y'a t'il une notion de priorité dans les tables que vous proposez ?
    Dans la table job par exemple

    JOB
    ----------------
    job_id | priorite |
    ----------------
    1 | 1
    2 | 3
    3 | 2
    ...

    ++

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    135
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 135
    Par défaut
    sans l'avoir tester.
    peut être il y aura plus simple

    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
     
     
    Select P1.Job,P1.Piece,
          Case When (Select coalesce(Stock,0)-(Select Sum(P2.Qte)
                                                               From Prod P2
                                                               Where P1.Piece=P2.Piece
                                                               And P1.Job<P2.Job)
                          from INVENTAIRE I
                          Where I.Piece=P1.Piece)>P1.Qte 
               then P1.Qte
               else
                 Case When  (Select coalesce(Stock,0) -(Select Sum(P2.Q)
                                                        From Prod P2
                                                        Where P1.Piece=P2.Piece
                                                        And P1.Job<P2.Job)
    	                from INVENTAIRE I
    	                Where P1.Piece=I.Piece) <=0 
    	        then  0
    	        else
    	        (Select coalesce(Stock,0) -(Select Sum(P2.Q)
    		                              From Prod P2
    		                              Where P1.Piece=P2.Piece
    		                              And P1.Job<P2.Job)
    	        from INVENTAIRE I
    	        Where P1.Piece=I.Piece)
    	    End
          End as quantite_a_sortir
    From PROD P1

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Février 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Février 2010
    Messages : 32
    Par défaut
    Oui il y a une priorite, en fait le champ est dans la table même comme ceci:

    Les Champs sont les suivants

    Job
    piece
    priorite
    Quantite
    inventaire_total

    Donc c'est seulement une table avec ces informations.

  7. #7
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Donnez un jeu de données, cela ôte les doutes

    Par exemple la priorité 1 est-elle la plus élevée, ou est-ce la priorité 10 ?

    @++

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 18/12/2008, 17h55
  2. Réponses: 2
    Dernier message: 10/10/2008, 16h56
  3. probleme dans une fonction qui affiche le nombre de ligne du texte
    Par étoile de mer dans le forum Débuter
    Réponses: 7
    Dernier message: 19/09/2008, 08h25
  4. afficher le nombre de ligne dans un dataset
    Par abbd dans le forum Windows Forms
    Réponses: 1
    Dernier message: 10/03/2008, 13h14
  5. Afficher le nombre de ligne dans un état
    Par morgan4 dans le forum IHM
    Réponses: 3
    Dernier message: 08/01/2008, 14h06

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