2016-04-17 11 views
1

Ich habe das seit Stunden versucht und kann nicht scheinen, um meinen Kopf herum zu bekommen, wie ich fortfahren sollte. Ich habe diese Tabelle hier:Kreuzanalyse und Durchschnitt mehrerer Felder

enter image description here

Volha für Volumen von Hektar steht, Tiha für Pflanzen pro Hektar. BOP, SEPM und PET sind Pflanzenfamilien.

Was ich zu tun suche ist, eine Tabelle zu bekommen, wo ich den Durchschnittswert für das Volumen pro Hektar und Pflanzen pro Hektar in jedem der 13 Blöcke für jede der 3 Pflanzenfamilien habe. Beispiel: der Durchschnittswert für das Volumen pro Hektar BOP in Block 7. Die Finaltabelle sollte so aussehen, außer dass hier "Gesamtvolumen" oder "Gesamtpflanzen" anstelle von Durchschnitt angegeben wird.

enter image description here

+1

Sie sollten Ihre Frage bearbeiten und die Ergebnisse für die von Ihnen bereitgestellten Daten anzeigen. Außerdem wäre es sehr hilfreich, wenn die Daten als Texttabelle und nicht als Bild eingefügt würden. SQL Fiddle kann auch helfen. –

Antwort

1

Wenn ich Ihr Ziel unterschätzt, einfach ein Aggregat Abfrage Gruppierung von Blöcken ausgeführt werden.

SELECT NOBLOC, SUP_HA, 
     AVG(TigehaBOP) AS NOM_BOP, 
     AVG(TigehaPET) AS NOM_PET, 
     AVG(TigehaSEP) AS NOM_SEP, 
     AVG(VolhaBOP) AS VOL_BOP, 
     AVG(VolhaPET) AS VOL_PET, 
     AVG(VolhaSEP) AS VOL_SEP 
FROM Table 
GROUP BY NOBLOC, SUP_HA 

HINWEIS: SQL fusionieren nicht Zellen, wie vorgeschlagen, Header und Spalten wurden doppelte Aliase zu vermeiden vorangestellt.

+0

Vielen Dank. Ich verstehe nicht, warum dein funktioniert und meine Versuche nicht. Ich habe genau das Gleiche versucht. Hätte es etwas verändert, wenn Sie NOBLOC und SUP_HA nicht zuerst in diese Abfrage eingefügt hätten? –

+0

Gut zu helfen! Die Reihenfolge spielt keine Rolle, solange "GROUP BY" die entsprechende Spalte enthält. Spalten erscheinen jedoch nur, wenn sie in SELECT angegeben sind. – Parfait

Verwandte Themen