Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

T-SQL Gruppieren-Summieren

Mitglied: CreamyCewie

CreamyCewie (Level 1) - Jetzt verbinden

11.06.2018 um 10:11 Uhr, 1018 Aufrufe, 5 Kommentare

Hallo.

Ich habe eine SQL-Abfrage, mit der Ich mir mehrere Werte aus zwei Tabellen hole.

Mein Makro sieht so aus:

Die Abfrage funktioniert, ich bekomme nun eine Auflistung aller Datensätze samt den Werten.

Nun habe ich 2 Fragen bzw. Probleme.

1.) Ich muss nun div. Felder aufsummieren.
Ich brauche also nun die Summe aller "Ara1" Datensätze, die Summe aller "Ara2"-Datensätze usw.
würde ich Prinzipiell mit "SUM" hinbekommen, was jedoch zu Problem 2 führt:

2.) Ich brauche diese Summierung gruppiert.
In den Einzelnen DS ist das Feld "AraGruppe" befüllt.
Dies kann verscheidene Werte enthalten, z.B. AT1, AT2, AT3, ...

Wie muss ich mein Statement umbauen?

Zur Veranschaulichung, wir haben eine Ergebnissmenge die foglend aussieht:
~Artikel ~Menge ~AraGruppe ~Ara1 ~Ara2 ~Ara3 ~Ara4 ~Ara5
pp1000 600 AT 20a 0,015 0,106 0,005
pp1003 60 AT 20a 0,015 0,106 0,008
pp1006 60 AT 20a 0,014 0,095 0,011
pp1050 600 AT 20a 0,015 0,106 0,005
pp1050 1200 AT 20a 0,015 0,106 0,005
pp1200 1200 AT 17 0,015 0,106 0,005
pp1200 1200 AT 17 0,015 0,106 0,005
pp1200 1200 AT 17 0,015 0,106 0,005
pp2000 300 AT 19 0,015 0,106 0,008
pp2000 600 AT 19 0,015 0,106 0,008
pp2001 120 AT 19 0,015 0,106 0,005
pp2002 1200 AT 19 0,016 0,106 0,008
Gerechnet werden soll immer:
Menge * ARA1
Menge * ARA2
Menge * ARA3
usw.

Jedoch brauche ich diese Rechnung pro AraGruppe.

Wie wäre dies zu realisieren?

Lieben Dank!
Mitglied: sabines
11.06.2018 um 10:44 Uhr
Moin,

was spricht dagegen dein SQL Statement mit group by zu erweitern/anzupassen?

Gruss
Bitte warten ..
Mitglied: CreamyCewie
11.06.2018 um 11:23 Uhr
Wenn ich es mit Group by anpasse, muss ich jede Spalte entweder gruppieren oder aggregieren.
Dies ist jedoch nicht möglich, da die Werte (zB in den Feldern a._ARA_1010 usw) immer unterschiedlich sind, und auch sein müssen.
Wenn ich mit den Werten rechne, verfälsche ich das ergebniss.
Bitte warten ..
Mitglied: emeriks
11.06.2018 um 11:32 Uhr
Hi,
ich glaube, Du hast einen Denkfehler in Deiner eigenen Anforderung.
Wenn Du nach "AraGruppe" die "Menge" summieren willst - wo willst Du das dann hinschreiben? In jede einzelne Zeile eines Artikels aus dieser Gruppe? Weil die anderen Felder unterscheiden sich doch auch, z.B. "Ara1" für "pp1006" und "pp1050", welche beide in Gruppe "AT 20a" sind. Ergo musst Du eh neu selektieren und kannst nur die Summe von "Menge" in Abhängigkeit von nur "AraGruppe" darstellen. Oder?

E.
Bitte warten ..
Mitglied: em-pie
11.06.2018, aktualisiert um 11:46 Uhr
Moin,

Mache doch zwei Statements und verkette die mit einem Inner join.

Das erste Statement beinhaltet deine relevanten Felder aus einzelnen Datensätzen.
Im zweiten Statement machst du deine relevanten zu aggregierenden Felder und schlüssel ist dann (vermutlich) die Spalte "AraGruppe" (!?).

Du müsstest dir nur die richtigen Felder dann noch auswählen und einsetzen

Gruß
em-pie
Bitte warten ..
Mitglied: ukulele-7
11.06.2018 um 11:58 Uhr
Dein SQL scheint massiv gegen die Normalisierung zu verstoßen. Ich würde sagen durch die redundanten Spalten machst du dir dein Leben selber schwer. Mit sum() kannst du keine Spalten aufaddieren, nur Zeilen. Daher wirst du mit a._ARA1010 + a._ARA1020... arbeiten oder deine Daten normalisieren müssen.

Das mit dem gruppieren "verschlimmert" dann ggf. die Probleme, daher wäre ich für eine Änderung der Tabelle und die Auslagerung der Werte Ara1 bis N in eine eigene Tabelle.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MS-SQL-Server + T-SQL+Batch
Frage von kallewirschDatenbanken4 Kommentare

Hallo Gemeinde, mal wieder ein Problem aus dem Bereich des MS-SQL-Servers. Folgendes Thema: Nachts sollen automatisch Backups der DBen ...

Datenbanken
T-SQL und REPLACE()
Frage von SachsenHessiDatenbanken

Hallo Folks, stehe mal gerade im Walde Folgendes Problem: - Es gibt eine Tabelle in der Kenner und der ...

Datenbanken

T-SQL: Inhalt verschiedener Spalten in eine Spalte schreiben

gelöst Frage von SuilvenDatenbanken2 Kommentare

Guten Morgen, Ich habe eine Tabelle „Artikelinfo“ mit den Spalten „Art_Nr_Halbzeug“; „Ben_Halbzeug“ und „Bez_Halbzeug“ nun muss ich in eine ...

Sicherheits-Tools

T-Pot ausbruchssicher?

Frage von nina1108Sicherheits-Tools11 Kommentare

Hallo, ich bin im Internet über das Thema Honeypot gestolpert. Besonders der "T-Pot" von der Telekom sieht sehr interessant ...

Neue Wissensbeiträge
Administrator.de Feedback
Hinweise auf Dienstleister oder auf Suchmaschinen
Information von Frank vor 2 TagenAdministrator.de Feedback71 Kommentare

Lieber User, Admins und Moderatoren, aus gegebenen Anlass möchte ich zwei Dinge endgültig klarstellen und für die Nachwelt festhalten: ...

Router & Routing

PfSense 2.4 IPSec VPN mobile Clients Phase 2 wird plötzlich nicht mehr aufgebaut - So einfach war die Lösung

Tipp von the-buccaneer vor 2 TagenRouter & Routing9 Kommentare

Moinsen! Nachdem ich mir hierbei nen Wolf gesucht habe, möchte ich doch die Welt an dieser simplen Lösung teilhaben ...

Humor (lol)
Wählscheiben Telefon
Information von brammer vor 3 TagenHumor (lol)4 Kommentare

Hallo, Mal wirkliche eine nette Spielerei brammer

Sicherheit

Zeitenwende: Mehr pot. Mac- (Heise Wortlaut) als Windowsbedrohungen

Information von certifiedit.net vor 4 TagenSicherheit4 Kommentare

Wir hatten es ja hier erst letztens, dass OS bzw Mac auch nicht der Weisheit letzter Schluss ist, nun ...

Heiß diskutierte Inhalte
Netzwerke
Instagram Fake Account
Frage von NurangnNetzwerke18 Kommentare

Hey Leute, Ich bin neu hier und hätte eine Frage. Und zwar werden mein Freund und ich von Mehreren ...

Server-Hardware
Verkaufe mein HomeLab - Hat jemand Interesse?
Frage von BirdyBServer-Hardware13 Kommentare

Hallo miteinander, auf Grund eines bald bevorstehenden Umzugs, chronischer Nichtnutzung und des sehr eingeschränkten FAF (Frauen-Akzeptanz-Faktors) möchte ich mein ...

Hyper-V
HyperV Cluster nachträglich in neue Domäne einbinden - Fehler Livemigration
Frage von bierzapferHyper-V13 Kommentare

Hallo zusammen, wir haben einen neuen HyperV Cluster implementiert und die produktive Gesamtstruktur inkl. produktiver Domäne auf neue Win2019 ...

LAN, WAN, Wireless
Wie bekomme ich die WLAN Verbindung hin
Frage von McPittyLAN, WAN, Wireless9 Kommentare

Habe eine Video Cam, Canon Legria HF G 40 welche über eine WLAN Verbindung mit einem Tablet verbunden ist. ...