2016-10-06 5 views
0

Ich habe eine SQL-Tabelle mit mehreren Dimensionen, wenn ich es nach Tag eins Dimensionen aggregiere, bekomme ich die richtige Zahl, aber wenn ich weitere Dimensionen hinzufügen, bekomme ich eine andere Nummer. Das ist super seltsam SK_DATE SK_COUNTRY Number1 Number2Aggregation mit Dimensionen funktioniert nicht

Also, wenn ich

SELECT 
    SK_DATE 
    ,MAX(number1) 
    ,MAX(number2) 
FROM 
    table 1 
GROUP BY 
    SK_DATE 
; 

Nein, wenn ich die gleiche Sache laufen. aber diesmal

SELECT 
    SK_DATE 
    ,SK_COUNTRY 
    ,MAX(number1) 
    ,MAX(number2) 
FROM 
    table 1 
GROUP BY 
    SK_DATE 
    ,SK_COUNTRY 
; 

so auf dem ersten Lauf erhalte ich 5.2M für Nummer 1, aber wenn ich die zweite Abfrage ausführen ich erhalte 6.4M

enter image description here

enter image description here

Danke Fortschritt

+1

Alles gut formatierter Text. – jarlh

Antwort

1

Wenn Sie mehr Werte von SK_COUNTRY in einem einzelnen SK_Date erhalten haben, sollten Sie erwarten, dass die Anzahl der Zeilen aufgebläht wird. Da die Aggregation auf einer eindeutigen Kombination von SK_DATE und SK_COUNTRY basieren wird, fügen Sie Beispieltabellendaten, das aktuelle Ergebnis und das erwartete Ergebnis hinzu.

SELECT 
SK_DATE 
,SK_COUNTRY 
,MAX(number1) 
,MAX(number2) 
FROM 
table 1 
GROUP BY 
SK_DATE 
,SK_COUNTRY 
; 
Verwandte Themen