sql >> データベース >  >> RDS >> Mysql

ブタで同等のグループコンキャット?

    grouped = GROUP table BY userid;
       X = FOREACH grouped GENERATE group as userid, 
                                    table.clickcount as clicksbag, 
                                    table.pagenumber as pagenumberbag;
    

    X なります:

    {(155,{(2),(3),(1)},{(12),(133),(144)},
     (156,{(6),(7)},{(1),(5)}}
    

    次に、builtinを使用する必要があります。 UDF BagToTuple

    output = FOREACH X GENERATE userid, 
                                BagToTuple(clickbag) as clickcounts, 
                                BagToTuple(pagenumberbag) as pagenumbers;
    

    output これで、必要なものが含まれているはずです。出力ステップをマージステップにマージすることもできます:

        output = FOREACH grouped GENERATE group as userid, 
                         BagToTuple(table.clickcount) as clickcounts, 
                         BagToTuple(table.pagenumber) as pagenumbers;
    



    1. 2つの列を同じテーブルに結合する方法

    2. MySQLをDebian7にインストールする方法

    3. SQLServer2008の列の千単位の区切り記号

    4. freebsdスウェーデン語文字(åäö)にmysqlとphpを含むUTF-8