如何在gridview中对行进行分组?

use*_*404 1 vb.net asp.net gridview

我有这样的表

ID |Company| Product
--------------------
1  |  KP   |  O/D
1  |  KD   |  L/C
Run Code Online (Sandbox Code Playgroud)

我希望按ID分组,多个公司和产品用逗号分隔,如下所示

1 |KD,KP  |O/D,L/C
Run Code Online (Sandbox Code Playgroud)

请发布代码,例如.谢谢

Vig*_*r A 6

这个问题与您的数据库方面有关:

如果您使用的是Mysql使用Group_Concat

试试这个

SELECT ID,Group_Concat(Company),Group_Concat(Product)
FROM tbl
Group By ID
Run Code Online (Sandbox Code Playgroud)

Fiddle Demo

如果您使用的是MSSQL

试试这个

  SELECT Distinct T1.ID,
  STUFF(
         (SELECT ',' + T2.Company
          FROM tbl T2
          WHERE T1.ID = T2.ID
          FOR XML PATH (''))
          , 1, 1, '')  AS Company,
  STUFF(
         (SELECT ',' + T3.Product
          FROM tbl T3
          WHERE T1.ID = T3.ID
          FOR XML PATH (''))
          , 1, 1, '')  AS Product
  FROM tbl T1;
Run Code Online (Sandbox Code Playgroud)

Fiddle Demo