3 回答

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊
您需要一個(gè)函數(shù)來進(jìn)行串聯(lián)。
Microsoft Access壓縮表中的多行
使用數(shù)據(jù)的示例:
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;

TA貢獻(xiàn)2039條經(jīng)驗(yàn) 獲得超8個(gè)贊
這是一個(gè)出色的鏈接:在SQL中如何通過調(diào)用函數(shù)來做到這一點(diǎn)。說明非常清楚,并且為您編寫了該功能,因此您只需復(fù)制,粘貼和粘貼即可。即使是不了解VB的人也可以輕松實(shí)現(xiàn)它: 連接相關(guān)記錄中的值

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超9個(gè)贊
這可能很難獲得。如果必須在查詢而不是函數(shù)中執(zhí)行此操作,則將遇到的問題是可以連接成一列的行數(shù)限制。到目前為止,我發(fā)現(xiàn)實(shí)現(xiàn)此目標(biāo)的唯一方法是通過iif語句。
SELECT
test1.ColumnA AS ColumnA,
First([test1].[ColumnB]) & IIf(Count([test1].[ColumnB])>1,"," & Last([test1].[ColumnB])) AS ColumnB
FROM test1
GROUP BY test1.ColumnA;
返回:
ColumnA ColumnB
1 abc,xyz
2 efg,hij
3 asd
這將只返回第一個(gè)和最后一個(gè),但是我敢肯定,您只需做一點(diǎn)點(diǎn)工作就可以計(jì)算出Choose函數(shù),但是就像我說的那樣,您必須為要添加的每個(gè)其他項(xiàng)添加更多的iif語句,因此局限性。
添加回答
舉報(bào)