zoukankan      html  css  js  c++  java
  • 超简单的自定义GroupBy方式

    来源:http://www.cnblogs.com/yiyanxiyin/archive/2008/06/26/1230524.html

    --测试表
    create table Test
    (F1 
    varchar(10),
     F2 
    varchar(10))
    --插入数据
    insert into Test 
    select 'jack' F1,'book1' F2
    union
    select 'jack' F1,'book2' F2
    union
    select 'jack' F1,'book3' F2
    union
    select 'Mary' F1,'book4' F2
    union
    select 'Mary' F1,'book5' F2
    union
    select 'Mike' F1,'book1' F2
    union
    select 'Mike' F1,'book5' F2
    union
    select 'Mike' F1,'book7' F2
    union
    select 'Mike' F1,'book9' F2
    --一条动态SQL语句

    go
    --合并函数
    CREATE FUNCTION MergeCharField(@Group varchar(255))
    RETURNS varchar(8000)
    AS
    BEGIN
    DECLARE @r varchar(8000)
    SET @r=''
    SELECT @r=@r+','+rtrim(F2) FROM Test WHERE F1=@Group

    RETURN(substring(@r,2,8000))
    END
    GO
    --调用
    select F1 [name],dbo.MergeCharField(F1) [book] from test group by F1
    --删除测试环境
    drop table test
    drop FUNCTION MergeCharField

    /*
    name     book
    --------------------------
    jack       book1,book2,book3
    Mary     book4,book5
    Mike     book1,book5,book7,book9

    */

  • 相关阅读:
    HDU 2955 Robberies
    CodeForces 429B Working out DP
    Lweb and String 超级大水题
    A water problem 大数取余。
    Danganronpa 水题。
    HDU 2018 DP
    Git分支管理
    linux相关操作命令
    项目部署相关命令(pm2)
    ubantu16.04安装sougou输入法
  • 原文地址:https://www.cnblogs.com/yanyuge/p/3412592.html
Copyright © 2011-2022 走看看