Heim > Datenbank > MySQL-Tutorial > Wie kann ich in einer MS Access-Abfrage mehrere Zeilen zu einem einzigen Wert verketten?

Wie kann ich in einer MS Access-Abfrage mehrere Zeilen zu einem einzigen Wert verketten?

Linda Hamilton
Freigeben: 2025-01-07 21:17:44
Original
497 Leute haben es durchsucht

How Can I Concatenate Multiple Rows into a Single Value in an MS Access Query?

Kombinieren mehrerer Zeilen zu einem einzigen Wert in MS Access-Abfragen

Diese Anleitung demonstriert zwei Methoden zum Verketten mehrerer Zeilen zu einem einzigen Wert innerhalb einer MS Access-Abfrage, basierend auf einem gemeinsamen Feld. Die Methoden verwenden entweder eine benutzerdefinierte Funktion oder integrierte Aggregatfunktionen.

Methode 1: Verwenden einer benutzerdefinierten Funktion (GetList)

Dieser Ansatz erfordert die Erstellung einer VBA-Funktion. Die Abfrage ruft dann diese Funktion auf, um die Verkettung durchzuführen.

Hier ist die Abfragestruktur:

<code class="language-sql">SELECT ColumnA, GetList("SELECT ColumnB FROM Table1 WHERE ColumnA = " & [ColumnA], "", ", ") AS ColumnB
FROM Table1
GROUP BY ColumnA;</code>
Nach dem Login kopieren

Die Funktion GetList (definiert in einem VBA-Modul) durchläuft Zeilen mit demselben ColumnA-Wert und verkettet ihre entsprechenden ColumnB-Werte unter Verwendung eines Kommas als Trennzeichen. Sie können dieses Trennzeichen ganz einfach ändern.

Methode 2: Verwenden der integrierten Listenaggregationsfunktion

Diese Methode nutzt die integrierte List-Funktion für eine einfachere, codefreie Lösung.

Die Abfrage lautet:

<code class="language-sql">SELECT ColumnA, List(ColumnB) AS ColumnB
FROM Table1
GROUP BY ColumnA;</code>
Nach dem Login kopieren

Die List-Funktion verkettet automatisch ColumnB-Werte für jeden eindeutigen ColumnA-Wert. Beachten Sie, dass das von List verwendete Trennzeichen je nach Ihren Access-Einstellungen variieren kann.

Anschauliche Daten und Ergebnisse

Bedenken Sie diese Beispieldaten:

ColumnA ColumnB
1 abc
1 pqr
1 xyz
2 efg
2 hij
3 asd

Beide Methoden führen zu folgendem Ergebnis:

ColumnA ColumnB
1 abc, pqr, xyz
2 efg, hij
3 asd

Anpassen des Trennzeichens

Passen Sie das Trennzeichen innerhalb der GetList-Funktionsparameter (Methode 1) oder möglicherweise über regionale Einstellungen (Methode 2) an, um ein anderes Trennzeichen (z. B. Semikolon, Leerzeichen) zu verwenden.

Das obige ist der detaillierte Inhalt vonWie kann ich in einer MS Access-Abfrage mehrere Zeilen zu einem einzigen Wert verketten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage