簡體   English   中英

需要將MySql中的多行或Access與一行合並

[英]Need to combine multiple rows in MySql or Access with one row

我有一個包含 sku 編號、attribute_name 和屬性值的表。 每個 sku 都可以有很多屬性。

現在桌子看起來像這樣。

SKU,             ATT_NM,                                          ATT_VAL
TOST3580,   Supply Type,                                    Toner
TOST3580,   Pre-Consumer Recycled Content Percent [Nom],    0 %
TOST3580,   Post-Consumer Recycled Content Percent [Nom],   0 %
TOST3580,   Total Recycled Content Percent [Nom],           0 %
TOST3580,   OEM/Compatible,                                 OEM

我需要他們更像這樣。

SKU,ATT_NM,ATT_VAL,ATT_NM1,ATT_VAL1
TOST3580,Supply,Type,Toner,Pre-Consumer Recycled Content Percent,0 %

添加每個屬性值。 因此,例如上面的示例將具有 5 個不同的屬性。 每個 SKU 具有 2-20 個屬性。 任何幫助都是極好的。 抱歉格式錯誤。

這可以在 Access 或 MySQL 中完成

你可以嘗試這樣的事情(使用 MySQL)-

SELECT
    SKU,
    GROUP_CONCAT(IF(ATT_NM = 'Supply Type', ATT_VAL, NULL)) AS `Supply Type`,
    GROUP_CONCAT(IF(ATT_NM = 'Pre-Consumer Recycled Content Percent [Nom]', ATT_VAL, NULL)) AS `Pre-Consumer Recycled Content Percent [Nom]`,
    ...
FROM table
GROUP BY SKU

您可以使用 - 檢索屬性列表

SELECT DISTINCT ATT_NM
FROM table

然后使用返回的值構建上一個查詢。

暫無
暫無

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

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