Yes, you can do two passes in map-reduce. One pass to do grouping / distinct, and then another pass to do the counting.
The N1QL implementation doesn't map directly to map-reduce. But the general approach is to have a grouping phase and an aggregation phase. On Mon, Dec 30, 2013 at 1:32 AM, Thomas <[email protected]> wrote: > Hi Gerald, > > Yes indeed I have already tested it with success, but I find difficulties > to implemented with a Map/Reduce :S is it possible, I cannot find a simple > way, or to be able to do it with two map/reduce jobs one for distinct users > and one for counting results. > > If i dare to ask how it is implemented in N1QL? > > Thanks for your time again > Thomas > > > On Friday, December 27, 2013 6:05:48 PM UTC+2, Thomas wrote: >> >> Hi, >> >> I was googling around for a solution of a map/reduce where I will be able >> to perform a distinct/unique count of user ids, but I wasn't able to find a >> concrete solution/answer to this topic. My case is to count the unique >> users per day for example as well as other criteria. >> >> I have for example the following JSON documents of events: >> >> >> {"user":"user1", "color":"blue"} >> {"user":"user1", "color":"blue"} >> {"user":"user1", "color":"red"} >> {"user":"user2", "color":"blue"} >> >> >> And with my map/reduce view I want to do the following >> >> * number of distinct users per color >> >> { color: blue, count: 2} >> { color: red, count: 1} >> >> >> in SQL terms >> >> select color, count(distinct user) as users from test group by color >> >> >> Thanks >> >> >> >> >> -- > You received this message because you are subscribed to a topic in the > Google Groups "Couchbase" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/couchbase/ujEZzp1XXlk/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. > -- You received this message because you are subscribed to the Google Groups "Couchbase" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
