In diesem Abschnitt: Vorgehensweise: |
Wenn Sie einen Report mit einem numerischen Sortierfeld sortieren, können Sie die Sortierfeldwerte in Gruppen unterteilen und den Bereich jeder Gruppe definieren.
Es gibt mehrere Möglichkeiten, um Gruppen zu definieren. Sie können folgende Gruppen definieren:
Jede Reportanfrage kann bis zu fünf IN-GROUPS-OF-Phrasen enthalten und IN-RANGES-OF-Phrasen. Die Phrase IN-GROUPS-OF kann pro BY-Feld nur einmal verwendet werden. Der erste Sortierfeldbereich fängt mit dem niedrigsten Wert eines Vielfachen des Wertes IN-GROUPS-OF an, und der angezeigte Wert ist der Anfangspunkt jedes Bereichs.
Jede Reportanfrage kann bis zu fünf IN-GROUPS-OF-Phrasen enthalten und IN-RANGES-OF-Phrasen. Die Phrase IN-RANGES-OF kann pro BY-Feld nur einmal verwendet werden, und sie erzeugt eine zusätzliche interne Sortierphrase, die in der Gesamtanzahl der Sortierphrasen berücksichtigt werden muss. Der erste Sortierfeldbereich fängt mit dem niedrigsten Wert eines Vielfachen des Wertes IN-GROUPS-OF an. Es wird keine Meldung erzeugt, wenn Sie als Bereich null angeben, aber die Werte, die im Report angezeigt werden, sind unvorhersehbar.
Die Phrase FOR wird normalerweise verwendet, um Matrixreports zu erzeugen, und sie ist Teil der Financial Modeling Language (FML). Sie können sie jedoch auch verwenden, um Spaltenreports zu erstellen, die Sortierfeldwerte in ungleichen Bereichen gruppieren.
Die FOR-Phrase zeigt den Sortierwert für jede individuelle Zeile an. Die Bereiche müssen nicht zusammenhängend sein, was bedeutet, dass die Bereiche Lücken haben dürfen. Die FOR-Phrase wird genauer beschrieben unter Finanzielle Reports mit der Financial Modeling Language (FML) erstellen.
Hinweis: Wenn es für eine Gruppe keine Daten gibt, wird für die Gruppe immer noch eine Zeile im Report angezeigt.
{BY|ACROSS} sortfield IN-GROUPS-OF value [TOP limit]
Hierbei gilt:
Ist der Name des Sortierfeldes. Das Sortierfeld muss numerisch sein. Sein Format muss I (ganze Zahl), F (Gleitkommazahl), D (Dezimalzahl) oder P (gepackte Zahl) sein.
Ist eine positive ganze Zahl, die angibt, in welchem Bereich Sortierfeldwerte gruppiert werden.
Ist eine optionale Zahl, die das höchste Gruppenlabel definiert, das in den Report aufgenommen werden soll.
Nachfolgend ist zu sehen, wie Sie zeigen können, welche Angestellten sich in welchem Gehaltsbereich befinden, und wie Sie die Bereiche mit Inkrementen von $5.000 definieren.
TABLE FILE EMPLOYEE PRINT LAST_NAME BY CURR_SAL IN-GROUPS-OF 5000 END
Die Ausgabe ist:
CURR_SAL LAST_NAME -------- --------- $5,000.00 SMITH GREENSPAN $10,000.00 STEVENS SMITH $15,000.00 JONES MCCOY MCKNIGHT $20,000.00 ROMANS BLACKWOOD $25,000.00 BANNING IRVING CROSS
{BY|ACROSS} sortfield IN-RANGES-OF value [TOP limit]
Hierbei gilt:
Ist der Name des Sortierfeldes. Das Sortierfeld muss numerisch sein. Sein Format muss I (ganze Zahl), F (Gleitkomma), D (Doppelpräzision) oder P (gepackt) sein.
Ist eine ganze Zahl, die größer ist als Null, und die angibt, in welchem Bereich Sortierfeldwerte gruppiert werden.
Ist eine optionale Zahl, die das höchste Bereichslabel definiert, das in den Report aufgenommen werden soll. Der Bereich wird erweitert, so dass er alle Datenwerte enthält, die größer als dieser Wert sind.
Hinweis: IN-RANGES-OF erzeugt eine interne Sortierphrase, die berücksichtigt werden muss für die Gesamtanzahl der Sortierphrasen.
TABLE FILE EMPLOYEE PRINT LAST_NAME BY CURR_SAL IN-RANGES-OF 5000 END
Die Ausgabe ist:
FOR sortfield begin1 TO end1 [OVER begin2 TO end2 ... ]
Hierbei gilt:
Ist der Name des Sortierfeldes.
Ist ein Wert, der den Anfang des Bereichs identifiziert.
Ist ein Wert, der das Ende des Bereichs identifiziert.
Die folgende Anfrage zeigt Angestelltengehälter an, aber sie gruppiert sie willkürlich. Beachten Sie, dass der Anfangswert jedes Bereichs im Report gedruckt wird.
TABLE FILE EMPLOYEE PRINT LAST_NAME FOR CURR_SAL 9000 TO 13500 OVER 14000 TO 19700 OVER 19800 TO 30000 END
Die Ausgabe ist:
Vorgehensweise: Referenz: |
Sie können numerische Daten in tabellarischen Reports in eine beliebige Anzahl von Quantilen unterteilen (Perzentile, Dezile, Quartile usw.) in tabellarischen Reports. Sie können z. B. die Testergebnisse von Studenten in Zehntelwerte gruppieren um festzustellen, welche Studenten die besten 10% der Klasse sind. Sie könnten auch festzustellen, welche Verkäufer in der oberen Hälfte der Gesamtverkäufe verkauft haben.
Die Unterteilung basiert auf den Werten im ausgewählten vertikalen (BY) Feld und die Daten werden so genau wie möglich in die Anzahl der von Ihnen angegebenen Quantile aufgeteilt.
Das Folgende geschieht, wenn Sie Daten in Prozentkategorien gruppieren:
1 5 5 5 8 9
In diesem Fall ergibt das Aufteilen der Instanzen in Gruppen, die die gleiche Anzahl von Datensätzen enthalten, Folgendes:
Gruppe |
Datenwerte |
---|---|
1 |
1,5 |
2 |
5,5 |
3 |
8,9 |
Da sich aber die gleichen Datenwerte auch in demselben Quantil befinden müssen, werden die Fünfen (5), die in Gruppe 2 sind, in Gruppe 1 verschoben. Gruppe 2 bleibt leer. Die endgültigen Quantile lauten:
Quantilnummer |
Datenwerte |
---|---|
1 |
1,5,5,5 |
2 | |
3 |
8,9 |
BY [ {HIGHEST|LOWEST} [k] ] tilefield [AS 'head1'] IN-GROUPS-OF n TILES [TOP m] [AS 'head2']
Hierbei gilt:
Sortiert die Daten in absteigender Reihenfolge, so dass die höchsten Datenwerte in das Quantil 1 platziert werden.
Sortiert die Daten in aufsteigender Reihenfolge, so dass die niedrigsten Datenwerte in das Quantil 1 platziert werden. Dies ist die Default-Sortierreihenfolge.
Ist eine positive ganze Zahl, die die Anzahl der Quantilgruppen angibt, die im Report angezeigt werden sollen. Beispielsweise zeigt BY HIGHEST 2 die zwei nicht leeren Quantile mit den höchsten Datenwerten an.
Ist das Feld, dessen Werte verwendet werden, um die Quantilnummern zuzuweisen.
Ist eine Kopfzeile für die Spalte, die die Werte des Quantilsortierfeldes anzeigt.
Ist eine positive ganze Zahl, die nicht größer als 32.767 sein darf, und die die Anzahl von Quantilen angibt, die beim Gruppieren der Daten verwendet wird. Bei 100 Quantilen werden beispielsweise Perzentile erzeugt und bei 10 Quantilen Dezile.
Ist eine positive ganze Zahl, die den höchsten Quantilwert angibt, der im Report angezeigt werden soll. Beispielsweise zeigt TOP 3 keine Datenzeilen an, denen eine Quantilnummer zugewiesen wurde, die größer als 3 ist.
Ist eine Kopfzeile für die Spalte, die die Quantilnummern anzeigt.
Hinweis:
Nachfolgend sehen Sie, wie Sie Daten in fünf Quantile gruppieren.
TABLE FILE EMPLOYEE PRINT LAST_NAME FIRST_NAME BY DEPARTMENT BY CURR_SAL IN-GROUPS-OF 5 TILES END
Die Ausgabe ist:
Beachten Sie, dass die Quantile im Sortierfeld DEPARTMENT der höheren Ebene zugewiesen werden. In der Kategorie MIS sind dem Quantil 3 keine Daten zugewiesen. Die Kategorie PRODUCTION hat alle fünf Quantile.
In diesem Beispiel werden die Angestellten mit den drei niedrigsten Gehältern in fünf Quantile unterteilt.
TABLE FILE EMPLOYEE PRINT LAST_NAME FIRST_NAME BY DEPARTMENT BY LOWEST 3 CURR_SAL IN-GROUPS-OF 5 TILES END
Die Ausgabe ist:
Beachten Sie, dass die Anfrage drei Quantilgruppen in jeder Kategorie anzeigt. Da dem Quantil 3 in der MIS-Kategorie keine Daten zugewiesen wurden, werden die Quantile 1, 2 und 4 für diese Kategorie angezeigt.
In diesem Beispiel sind die Angestellten mit den drei niedrigsten Gehältern aufgelistet und in fünf Quantile unterteilt, aber es werden nur die obersten 3 Quantile (Quantile 1, 2 oder 3) im Report angezeigt. Es wurde außerdem die Kopfzeile für das Feld TILES umbenannt (mit der Phrase AS) in DECILES.
TABLE FILE EMPLOYEE PRINT LAST_NAME FIRST_NAME BY DEPARTMENT BY LOWEST 3 CURR_SAL IN-GROUPS-OF 5 TILES TOP 3 AS DECILES END
Die Ausgabe ist:
Da dem Quantil 3 in der MIS-Kategorie keine Daten zugewiesen wurden, werden nur die Quantile 1 und 2 für diese Kategorie angezeigt.
WebFOCUS |