sql >> Databasteknik >  >> RDS >> Mysql

gruppkonkat motsvarighet i gris?

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

Nu X kommer att vara:

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

Nu måste du använda den inbyggda UDF BagToTuple :

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

output ska nu innehålla det du vill ha. Du kan också slå samman utdatasteget till sammanfogningssteget:

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



  1. Autentisera som en specifik användare i MySQL

  2. Optimistisk kontra pessimistisk låsning

  3. UTF-8-strängar i en MySQL-databas blev trassliga efter konfigurationsändring

  4. Definiera sammansatt nyckel med automatisk ökning i MySQL