FAQ zu Datenbanken: Pivot-Tabellen Wertelisten
Content Q: Zur Erstellung von Pivot-Tabellen mit Wertelisten . 1 A: Konkatenation von Zeichenketten unter VBA . 2
Datenaufbereitung . 2 Verketten . 3 Kreuztabelle . 4
Q: Zur Erstellung von Pivot-Tabellen mit Wertelisten
Ich habe eine Liste mit x sich unterschiedlich häufig wiederholenden Elementen (Pflanzennamen), die n Klassen angehören und jeweils Attribute besitzen.
Nun möchte ich aus dieser Liste eine Tabelle/Matrix aufbauen, in der pro Element nur noch eine Zeile benötigt wird und dafür für jede Klasse eine eigene Spalte benutzt wird.
FAQ zu Datenbanken: Pivot-Tabellen Wertelisten
A: Konkatenation von Zeichenketten unter VBA In Kombination Art/Klasse kommen in der Regel mehrere Attribute vor, wie z.B.
Aus diesem Grunde muss die Zieltabelle präziser so aussehen:
Eine Tabelle mit Zeilenüberschriften (Art 1,…) heißt Kreuztabelle oder Pivot-Tabelle, weil ein Gruppierungsmerkmal (Klasse 1, …) als neue Überschrift (pivot) verwendet wird. Sie wird unter Access mit einer Kreuztabellenabfrage generiert. Als Werte treten Verkettungen von Inhalten mehrerer Zeilen auf. Für Zahlen gibt es anlog die Summe, die in solchen Fällen von der Kreuztabelle standardmäßig gebildet werden kann. Verkettungen werden jedoch nicht unterstützt. Aus diesem Grunde müssen wir die Ausgangstabelle t01 aufbereiten. Wir betrachten die folgende Kreuztabellen-Abfrage auf t01:
TRANSFORM Count(t01_PCA.A) AS AnzahlvonA SELECT t01_PCA.P AS [P/C] FROM t01_PCA GROUP BY t01_PCA.P PIVOT t01_PCA.C; Anstelle der Aggregatfunktion Count(t01_PCA.A) wird die Verkettung von Zeichen benötigt, wofür es keine Aggregatfunktion unter SQL gibt. Datenaufbereitung Wir sortieren die Tabelle t01_PCA nach den Spalten P, C, A.
FAQ zu Datenbanken: Pivot-Tabellen Wertelisten
SELECT t01_PCA.P, t01_PCA.C, t01_PCA.A FROM t01_PCA ORDER BY t01_PCA.P, t01_PCA.C, t01_PCA.A;
Ein VBA-Programm verbindet (P,C)-Gruppen der Form Verketten
Sub Verketten()
Dim dbs As DAO.Database, rs1 As DAO.Recordset, rs2 As
Set rs1 = dbs.OpenRecordset("t02_PCA", dbOpenTable)
Set rs2 = dbs.OpenRecordset("q01_t01", dbOpenDynaset) '02
lGroup = ((rec(1) = !P) And (rec(2) = !C))
Bei Gleichheit liegt eine Wiederholung zweier auseinderfolgender Zeilen in (P,C) vor = Gruppierung
Verkettung der Attribute zu einer Liste, getrennt mit “;”
Als Ergebnis haben wir die Tabelle t02:
FAQ zu Datenbanken: Pivot-Tabellen Wertelisten
Adoxa moschatellina 1 32 100;6;8 Kreuztabelle Die Tabelle t02 dient als Quelle für die Kreuztabelle: 11 12 13 14 15 16 22 23 24 25 26
Adoxa moschatellina 1 63;66 15;32 1;2 100;6;8
TRANSFORM First(t02_PCA.A) AS ErsterWertvonA SELECT t02_PCA.P AS P/C FROM t02_PCA GROUP BY t02_PCA.P PIVOT t02_PCA.C;
Zusammenfassung Voraussetzung für eine Kreuztabelle sind zwei Achsen (P, C) zu denen es Werte A gibt, die in geeigneter Weise (Sum, First,…) zu einem einzigen Wert zusammengefasst (aggregiert) werden müssen. Das Ergebnis wird dann in einer Kreuztabelle (Kartesische Produkt der Werte in P und der Werte in C) zusammengefasst, in deren Schnittzellen (Zeilen P und Spalten C) die aggregierten Werte von A stehen.
PROTOCOL IN THE EVENT OF WORKPLACE HARASSMENT CONDUCT UNDERSTOOD AS SEXUAL HARASSMENT . 4 CONDUCT UNDERSTOOD AS SEX RELATED HARASSMENT 4.1.3. PSYCHOLOGICAL HARASSMENT (MOBBING) . 5 CONDUCT UNDERSTOOD AS PSYCHOLOGICAL HARASSMENT 4.3.2. CONFIDENTIALITY AND PROTECTION . 8 4.3.3. FUNCTIONS HARASSMENT PREVENTION COMMITTEE. 8 4.3.6. HEALTH PROTECTION FOR GAMESA STAFF. 10 PROTOCOL IN THE EVENT OF
TIENT GUIDE A P Skin Care ServiCeS PLASTIC SURGERY CLINIC Medical grade products combined with education are essential in uncov-ering your skin’s true potential. The following available products will aide in your skin’s rejuvenation, function, and protection. retin-a or tretinoin Cream A derivative of Vitamin A, Retin-A is the most effective anti-aging topical on the ma