![]() |
Datenbank: Pervasive • Version: 13 • Zugriff über: ODBC
SQL: pro Monat eine "Spalte", quasi eine Pivot-Funktion
Hallo zusammen,
folgende Tabellendatensätze sind vorhanden (stark vereinfacht) Datum | PersNr | Istzeit 01.09.2018 | 4711 | 480 02.09.2018 | 4711 | 420 03.09.2018 | 4711 | 460 … 01.10.2018 | 4711 | 395 02.10.2018 | 4711 | 490 Nun suche ich eine SQL Abfragemöglichkeit, die mir das Ganze nach Monat pro Mitarbeiter summiert und mir die Summe in einer Spalte für September und eine 2. Spalte für Oktober ausgibt. Das Ergebnis soll dann in etwa so aussehen: PersNr | September Ist-Stunden | Oktober Ist-Stunden 4711 | 1360 | 885 Tja, und da hänge ich gerade fest. Habe schon einiges probiert... Hat hier jemand einen Tipp wie ich das bewerkstelligen kann? Vielen Dank schon mal vorab. |
AW: SQL: pro Monat eine "Spalte", quasi eine Pivot-Funktion
Kenne mich mit Pervasive nicht so aus, aber so ungefähr sollte es funktionieren:
Code:
select
persnr, sum(if(month(datum) = 09, istzeit, 0)) as sep, sum(if(month(datum) = 10, istzeit, 0)) as okt, from tabelle group by persnr |
AW: SQL: pro Monat eine "Spalte", quasi eine Pivot-Funktion
@Olli73,
oh Mann, ich war da viel zu kompliziert an die Sache ran gegangen. Ich habe die Abfrage noch erweitert, dass nur die Datensätze zw. 01.09.2018 - 31.10.2018 geladen werden und das Ganze läuft akzeptabel. Vielen Dank für deine Hilfe! :dp: |
AW: SQL: pro Monat eine "Spalte", quasi eine Pivot-Funktion
In so manchem DBMS gibt es fertige Pivot-Funktionen, entweder als SQL-Function und oft sogar als C-Implementation im Hintergrund.
![]() ![]() Aggregate-Functions ala SUM verarbeiten alle Werte, die nicht NULL sind. Könntest also probieren ob NULL statt 0 da noch flotter rechnet. Statt dem IF könnte SUM eventuell auch mit Partitionen (OVER) oder Gruppierungen (GROUP BY) arbeiten? ![]() |
AW: SQL: pro Monat eine "Spalte", quasi eine Pivot-Funktion
[dup del]
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:40 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz