Alexej_a7x Geschrieben 26. Februar 2023 Teilen Geschrieben 26. Februar 2023 Hallo Community, ich habe eine Prüfungsaufgabe, wo meine Lösung von der Musterlösung vom U-Form abweicht. Da wollte ich mal nachfragen, ob meine Lösung auch Valide wäre. Tabelle: ProductionData(OrderID (PK),Width,Length,Thickness,Quantity) Alle Angaben sind in der Tabelle in mm angegeben. ab) Wie viele Produktionsaufträge für Wellpappen mit einer Dicke von 2mm wurden bisher in der Datenbank gespeichert. Geben Sie dazu den entsprechenden SQL-Befehl an. Meine Lösung: SELECT COUNT(OrderID) FROM ProductionData WHERE Thickness = 2 ; Musterlösung: SELECT Thickness,COUNT(*) AS "Gesamtanzahl Wellpappen" FROM ProductionData GROUP BY Thickness HAVING Thickness = 2; Wenn ich das mal bei SQL Island eintippe und auf die dortige Tabelle abwandel, dann kommt das richtige raus. Diese Lösung kommt mir jedoch irgendwie zu kompliziert vor. ac) Geben Sie die Gesamtanzahl gefertigter Wellpappen aus der Datenbank an, die mit einer Dicke von 2mm, einer Breite von 200mm und einer Länge von 300mm gefertigt worden sind. Geben Sie dazu den entsprechenden SQL-Befehl an. Meine Lösung: SELECT SUM(Quantity) FROM ProductionData WHERE Thickness = 2 AND Width =200 AND Length =300; Musterlösung: SELECT SUM(Quantity) AS "Gesamtanzahl" FROM ProductionData WHERE Thickness = 2 AND Width =200 AND Length =300 GROUP BY Thickness; Hier unterscheidet sich meine Lösung nur geringfügig von meiner. Einmal das AS zum Umbennen und das GROUP BY habe ich nicht. Wobei ich mich hier frage, warum das GROUP BY überhaupt hier steht. Bringt es hier überhaupt etwas? Danke für die Hilfe! Alexej Clay61 reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
hellerKopf Geschrieben 26. Februar 2023 Teilen Geschrieben 26. Februar 2023 (bearbeitet) Mit der Vorgabe an die Prüfenden, dass die Lösungen einen Ermessensspielraum lassen. Zitat Die Lösungs- und Bewertungshinweise zu den einzelnen Handlungsschritten sind als Korrekturhilfen zu verstehen und erheben nicht in jedem Fall Anspruch auf Vollständigkeit und Ausschließlichkeit. Neben hier beispielhaft angeführten Lösungsmöglichkeiten sind auch andere sach- und fachgerechte Lösungsalternativen bzw. Darstellungsformen mit der vorgesehenen Punktzahl zu bewerten. Der Bewertungsspielraum des Korrektors (z. B. hinsichtlich der Berücksichtigung regionaler oder branchenspezifischer Gegebenheiten) bleibt unberührt. musst du dir keine Sorgen machen. Nur die AS Klauseln könnten bei einem scharfen Prüfer bemängelt werden, da dann deine Spalten vieleicht(!) nicht mehr die Überschrift haben, die der jeweilige Prüfer sehen will. Aber auch da kann man diskutieren, ob die Aufgabenformulierung die Spaltenüberschriften fordert. Bearbeitet 26. Februar 2023 von hellerKopf Alexej_a7x reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
pr0gg3r Geschrieben 27. Februar 2023 Teilen Geschrieben 27. Februar 2023 vor 10 Stunden schrieb Alexej_a7x: Einmal das AS zum Umbennen Macht ja durchaus Sinn, ein AS zu verwenden. Aber im Grunde ist die Abfrage ja auch nicht "falsch" ohne das AS, aber halt auch nicht so "schön". vor 10 Stunden schrieb Alexej_a7x: Wobei ich mich hier frage, warum das GROUP BY überhaupt hier steht. Bringt es hier überhaupt etwas? Ohne der krasse SQL-Profi zu sein, würde ich ganz klar nein sagen: was will man denn gruppieren (thickness), wenn sowieso nur eine Gruppe raus kommt (thickness = 2)? Dadurch ist das Ergebnis doch schon auf eine "Gruppe" beschränkt. Einen Unterschied würde es machen, wenn man mehrere Gruppen im Resultset haben möchte, zum Beispiel die Anzahl aller Produktionsdaten gruppiert nach thickness oder die Summe alle quantities aller Produktionsdaten nach thickness). Aber das ist ja in der Aufgabe nicht gefragt. Wenn bei verschiedenen Queries das gleiche richtige(!) Ergebnis raus kommt, würde ich auch immer das einfachere Query bevorzugen um die Komplexität nicht unnötig zu erhöhen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pfannkuchen Geschrieben 27. Februar 2023 Teilen Geschrieben 27. Februar 2023 Habe mich auch gewundert, ob "AS" unbedingt gegeben sein muss, da es ja nicht explizit gefordert wird. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
carnaqe Geschrieben 28. Februar 2023 Teilen Geschrieben 28. Februar 2023 Habe mir den Kopf zerbrochen, wieso die unbedingt das "GROUP BY" bei der letzten aufgabe in der Lösung stehen haben, da es nach meinem Kenntnisstand rein garnichts bringt. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pega_de Geschrieben 28. Februar 2023 Teilen Geschrieben 28. Februar 2023 das GROUP BY brauchst du wegen dem "SUM" in der SELECT Zeile Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
carnaqe Geschrieben 28. Februar 2023 Teilen Geschrieben 28. Februar 2023 vor einer Stunde schrieb Pega_de: das GROUP BY brauchst du wegen dem "SUM" in der SELECT Zeile eben nicht Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pega_de Geschrieben 28. Februar 2023 Teilen Geschrieben 28. Februar 2023 vor 2 Stunden schrieb carnaqe: eben nicht https://www.w3resource.com/sql/aggregate-functions/sum-with-group-by.php Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Alexej_a7x Geschrieben 28. Februar 2023 Autor Teilen Geschrieben 28. Februar 2023 Und wie viele Gruppen hat man, wenn man im Where-Teil diese Bedingung "Thickness = 2 AND Width =200 AND Length =300" angibt, nach dem GROUP BY Thickness? Ich denke nur eine. carnaqe reagierte darauf 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
carnaqe Geschrieben 28. Februar 2023 Teilen Geschrieben 28. Februar 2023 vor 1 Stunde schrieb Pega_de: https://www.w3resource.com/sql/aggregate-functions/sum-with-group-by.php naja in der Aufgabe hast du keine Gruppen nach dem GROUP BY, zumindest immernoch nur eine, und Aggregatfunktionen laufen auch ohne Gruppierung durch. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Pega_de Geschrieben 28. Februar 2023 Teilen Geschrieben 28. Februar 2023 vor einer Stunde schrieb carnaqe: naja in der Aufgabe hast du keine Gruppen nach dem GROUP BY, zumindest immernoch nur eine, und Aggregatfunktionen laufen auch ohne Gruppierung durch. hmm, muss ich morgen mal testen. Uns wurde zumindest gesagt das auf eine Aggregatfunktion auch ein GROUP BY folgen muss. Mal schauen wie die Prüfung morgen läuft. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bartali Geschrieben 19. März 2023 Teilen Geschrieben 19. März 2023 Darf ich noch einmal? Wäre das auch okay? SELECT COUNT(*) "Anzahl_gefertigt", Width, Length FROM ProductionData WHERE Thickness = 2 AND Width = 200 AND Length = 300 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.