在 MS Access 查詢中連接行
簡介
本文探討了在 Microsoft Access 中嘗試根據第一列連接表中第二列的值時遇到的挑戰。我們的目標是透過查詢實現此轉換。
問題
考慮一個包含以下資料的表格:
ColumnA | ColumnB |
---|---|
1 | abc |
1 | pqr |
1 | xyz |
2 | efg |
2 | hij |
3 | asd |
我們的目標是將 ColumnB 中的值連接到 ColumnA 中每個唯一值的單一逗號分隔字串中。所需結果如下:
ColumnA | ColumnB |
---|---|
1 | abc, pqr, xyz |
2 | efg, hij |
3 | asd |
解
為了實現此連接,我們使用名為「GetList」的自訂函數。此函數接受 SQL 查詢作為參數,並迭代查詢傳回的記錄集,將值連接到單一字串中。
以下是包含「GetList」函數的查詢:
<code class="language-sql">SELECT T.ColumnA, GetList("SELECT ColumnB FROM Table1 AS T1 WHERE T1.ColumnA = " & [T].[ColumnA],"",", ") AS ColumnBItems FROM Table1 AS T GROUP BY T.ColumnA;</code>
說明
外部查詢 (SELECT T.ColumnA) 檢索 ColumnA 中的唯一值。
GetList 函數用於根據 ColumnA 的當前值連接 ColumnB 中的值。 GetList 函數的參數為:
GROUP BY 子句按 ColumnA 將記錄分組,以確保連接的值正確分組。
以上是如何在 MS Access 中根據分組列連接行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!