Question : Problème de question de SQL

J'ai été invité à découvrir combien de matériel que nous avons employé en un mois en interrogeant le SQL database.

I peut renvoyer toutes les pièces de niveau supérieur en employant le class= suivant les " lineNumbers " >
1 de >
SELECT " de


This de
I puis besoin d'accéder à la table de bom pour renvoyer les matières employées pour la table de bom de parts.
The a la structure suivante : le problème du
Component
QtyPer

The du
ParentPart est celui pour n'importe quel ParentPart donné que le composant pourrait également se composer plusieurs du
ParentPart xxx de parts.
e.g. est fait en composant YYYY et des utilisations QtyPer 12
ParentPart xxx est faites en composant ZZZZ et des utilisations QtyPer 2
ParentPart xxx est faites en WWW composant et le problème de QtyPer 3

The d'utilisations j'ai est le composant ZZZZ est l'of
ParentPart ZZZZ est fait en aaaa composant et des utilisations QtyPer 4
ParentPart ZZZZ est faites en bbbb composant et des utilisations QtyPer 7

For l'exemple ci-dessus j'aurais besoin de la quantité 14
Part WWWW de bbbb du
Part de la quantité 8 d'aaaa de la quantité 12
Part du
uses
Part YYYY du return
ParentPart xxx La quantité 3

and multiplient alors la quantité de partie individuelle par le QtyPer retourné dans le SQL.

class= de

Réponse : Problème de question de SQL

choisir X.StockCode [topLevelPart], X.Qty [topQty],
      Fusionner (E.Component, D.Component, C.Component, B.Component, A.Component) [lowerLevelPart],
      ISNULL (E.QtyPer, 1)*ISNULL (D.QtyPer, 1)*ISNULL (C.QtyPer, 1)*ISNULL (B.QtyPer, 1)*ISNULL (A.QtyPer, 1)*X.Qty [quantité]
de (
      CHOISIR InvMovements.StockCode COMME StockCode, la SOMME (InvMovements.TrnQty) COMME quantité
      D'InvMovements
      INTÉRIEUR JOINDRE InvMaster SUR InvMovements.StockCode = InvMaster.StockCode
      LÀ OÙ (InvMovements.EntryDate ENTRE CONVERTI (DATE-HEURE, « 0h00 2010-05-31 : 00 », 102)
                                                        ET CONVERTI (DATE-HEURE, « 0H00 2010-06-27 : 00 », 102))
        ET (InvMovements.TrnType = « R ") ET (InvMaster.ProductClass DEDANS (« PDM », « PRM », « le TM », « P.M. "))
      GROUPE PAR InvMovements.StockCode
) X
intérieur joindre BOM A sur A.ParentPart = X.StockCode
la gauche joignent BOM B sur B.ParentPart = A.Component
la gauche joignent BOM C sur C.ParentPart = B.Component
la gauche joignent BOM D sur D.ParentPart = C.Component
la gauche joignent BOM E sur E.ParentPart = D.Component
ORDRE PAR X.StockCode
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us