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

时间:2014-04-28 10:40:10

标签: asp.net vb.net gridview

我有这样的表

ID |Company| Product
--------------------
1  |  KP   |  O/D
1  |  KD   |  L/C

我想按ID分组,多个公司和产品用逗号分隔,如此

1 |KD,KP  |O/D,L/C

请发布代码,例如。感谢

1 个答案:

答案 0 :(得分:6)

问题数据库方面有关:

如果您使用 Mysql 使用 Group_Concat

试试这个

SELECT ID,Group_Concat(Company),Group_Concat(Product)
FROM tbl
Group By ID

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;

Fiddle Demo