![]() |
Datenbank: SQL Server • Version: 2005 • Zugriff über: Direkt auf SQL Server mit einem Abfragefenster
SQL Pivot und Gruppierung funktioniert nicht
Hi,
folgendes Problem: Folgender Query gibt mir diesen View aus:
SQL-Code:
DECLARE @columns VARCHAR(8000)
SELECT @columns = COALESCE(@columns + ',[' + cast(Berufsbezeichnung as varchar) + ']', '[' + cast(Berufsbezeichnung as varchar)+ ']') FROM Bewerbungskategorien INNER JOIN (Berufe INNER JOIN ZO_Beruf_Kategorie ON Berufe.id_Berufe = ZO_Beruf_Kategorie.Berufnr) ON Bewerbungskategorien.id_Kategorien = ZO_Beruf_Kategorie.Kategorienr GROUP BY Berufsbezeichnung DECLARE @query VARCHAR(8000) SET @query = ' SELECT Kategorienr,Bewerbungsjahr,'+@columns+' FROM Bewerbungskategorien INNER JOIN (Berufe INNER JOIN ZO_Beruf_Kategorie ON Berufe.id_Berufe = ZO_Beruf_Kategorie.Berufnr) ON Bewerbungskategorien.id_Kategorien = ZO_Beruf_Kategorie.Kategorienr PIVOT ( MAX(Berufsbezeichnung) FOR Berufsbezeichnung IN (' + @columns + ') ) as p' EXECUTE(@query)
SQL-Code:
Kategorienr Jahr Bürokaufmann Eurokaufmann/-frau Industriekaufmann/-frau Informatikkaufmann/-frau
2 2008/2009 NULL Eurokaufmann/-frau NULL NULL 3 2008/2009 NULL NULL Industriekaufmann/-frau NULL 3 2008/2009 Bürokaufmann/frau NULL NULL NULL 4 2008/2009 NULL NULL NULL Informatikkaufmann/-frau Jetzt möcht ich mir die Abfrage so anpassen, dass mir die Kategorienummern gruppiert werden, d. h. dass ich folgendes Ergebnis bekomme:
SQL-Code:
Kategorienr Jahr Bürokaufmann/frau Eurokaufmann/-frau Industriekaufmann/-frau Informatikkaufmann/-frau
2 2008/2009 NULL Eurokaufmann/-frau NULL NULL 3 2008/2009 Bürokaufmann/frau NULL Industriekaufmann/-frau NULL 4 2008/2009 NULL NULL NULL Informatikkaufmann/-frau Wenn ich nach 'as p' noch "group by kategorienr ergänze, kommt folgender fehler: Die 'p.Bewerbungsjahr'-Spalte ist in der Auswahlliste ungültig, da sie nicht in einer Aggregatfunktion und nicht in der GROUP BY-Klausel enthalten ist. Wer weis wie ich das umgehen kann? DANKE!!! |
Re: SQL Pivot und Gruppierung funktioniert nicht
Wie es in der Fehlermeldung steht: feld in die Gruppierung aufnehmen oder in ein Aggregat verwandeln.
|
Re: SQL Pivot und Gruppierung funktioniert nicht
ja wenn ich das mach, dann kommen die felder, welche in @columns definiert sind
und bis dann keine fehlermeldung mehr kommt, sieht das ergebnis genauso aus weil nix mehr gruppiert wird :(( |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:04 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-2025 by Thomas Breitkreuz