簡體   English   中英

在Access SQL中合並字段為空的行

[英]Combine Rows in Access SQL where fields are blank

我一直在尋找將多行信息合並為一行以填充空白的信息。

Id | name | value1 | value2 | value3
1    bob      3                                                              
1    bob                        6
1    bob               B

如何將這三行合並為一行? 可以確認的是,它們將完美地適合空白值所在的位置,沒有值會重疊。

Id | name | value1 | value2 | value3
1    bob      3        B        6

除了名為ConcatRelated的東西(我無法對其進行修改以滿足我的需求)之外,我在研究中沒有發現太多有用的東西。 我也嘗試了一個小組陳述,但我也無法工作。 有任何想法嗎? 我一般對Access和SQL較新。

如何將這三行合並為一行?

使用GROUP BY查詢將3個“ bob”行合並為一個。 然后,您可以包含諸如Max()類的聚合函數,以檢索每個valueX列的非空白行。

SELECT
    y.Id,
    y.name,
    Max(y.value1) AS MaxOfvalue1,
    Max(y.value2) AS MaxOfvalue2,
    Max(y.value3) AS MaxOfvalue3
FROM YourTable AS y
GROUP BY
    y.Id,
    y.name;

如果要重用原始列名valueX而不是MaxOfvalueX別名,請將該名稱括在方括號中...

Max(y.value1) AS [value1]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM