1 Gruppierung (5) LhNrGesamtgewichtGesamtzahl LH-0016.003 LH-00241.0062 LH-00333.0035 LH-0047.505 LH-005133.0070 LH-006387.50260 LH-0075.5019 Gesamtgewichte.

  • Published on
    05-Apr-2015

  • View
    105

  • Download
    3

Embed Size (px)

Transcript

  • Folie 1
  • 1 Gruppierung (5) LhNrGesamtgewichtGesamtzahl LH-0016.003 LH-00241.0062 LH-00333.0035 LH-0047.505 LH-005133.0070 LH-006387.50260 LH-0075.5019 Gesamtgewichte und Stckzahlen der Lagereinheiten bezogen auf die Lagerhilfsmittel: selectLhNr, sum(Gewicht) as Gesamtgewicht, sum(Stckzahl) as Gesamtzahl fromLagereinheit group by LhNr;
  • Folie 2
  • 2 Gruppierung (6) LhNrGesamtgewichtGesamtzahl LH-00241.0062 LH-00333.0035 LH-005133.0070 LH-006387.50260 Nummern der Lagereinheitarten, fr die die Stckzahl der in den Lagereinheiten verpackten Artikel 35 oder mehr betrgt: selectLhNr, sum(Gewicht) as Gesamtgewicht, sum(Stckzahl) as Gesamtzahl fromLagereinheit group by LhNr havingsum(Stckzahl) >= 35;
  • Folie 3
  • 3 Gruppierung (7) Beispiel: Der nach Stckzahl am hufigsten gelagerte Artikel des Lieferanten 'Bosch': selectA.ANr, sum(Stckzahl) as Gesamtzahl fromArtikelArt A, Lagereinheit Le whereA.ANr = Le.ANr andLieferant = 'Bosch' group by A.ANr havingsum(Stckzahl) >= all ( selectsum(Stckzahl) fromArtikelArt A, Lagereinheit Le whereA.ANr = Le.ANr andLieferant = 'Bosch' group by A.Anr );
  • Folie 4
  • 4 Gruppierung (8) Generell knnen in SQL Attributwerte, die aus einer Gruppierung entstammen, nicht mit nichtgruppierten Attributen kombiniert werden. Die folgende sinnvolle Plausibilittsprfung ist also nicht mglich: selectsum(Le.Gewicht) - Lh.Gewicht as Differenz fromLagereinheit Le, Lagerhilfsmittel Lh whereLh.LhNr = 'LH-001' andLe.LhNr = Lh.LhNr; Erklrung: Unter Lh.Gewicht existiert ein Wert pro Tupel der Verbindungsrelation, sum(Le.Gewicht) ist jedoch nur fr die Verbindungsrelation insgesamt definiert.
  • Folie 5
  • 5 Gruppierung (9) Trickreiche Lsung: Da immer auf gleiche Lagerhilfsmittel abgehoben wird - das mit der Nummer 'LH-001' - ist auch dessen Lh.Gewicht das selbe. selectsum(Le.Gewicht) - max(Lh.Gewicht) as Differenz fromLagereinheit Le, Lagerhilfsmittel Lh whereLh.LhNr = 'LH-001 andLe.LhNr = Lh.LhNr; Differenz 0.00

Recommended

View more >