Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Parse.com云代码中的按查询分组_Javascript_Parse Platform_Parse Cloud Code - Fatal编程技术网

Javascript Parse.com云代码中的按查询分组

Javascript Parse.com云代码中的按查询分组,javascript,parse-platform,parse-cloud-code,Javascript,Parse Platform,Parse Cloud Code,我正在尝试使用云代码在Parse.com中获取以下sql命令的结果 选择店铺,按店铺从会员组中统计(1) 有没有办法做到这一点?或者我只能通过选择每家店铺获得会员人数 var query = new Parse.Query("Membership"); query.equalTo("shop",shop_id); var promise = query.find().then(function(results){ var number_of_membership_of_one_s

我正在尝试使用云代码在Parse.com中获取以下sql命令的结果

选择店铺,按店铺从会员组中统计(1)

有没有办法做到这一点?或者我只能通过选择每家店铺获得会员人数

var query = new Parse.Query("Membership");
query.equalTo("shop",shop_id);
var promise = query.find().then(function(results){
        var number_of_membership_of_one_shop = results.leng
        return results;
    });

很遗憾,Parse不支持分组方式

您可以首先选择所有店铺,然后对每个店铺使用计数查询

var query = new Parse.Query("Membership");
query.equalTo("shop",shop_id);

var promise = query.count().then(function(count){
    var number_of_membership_of_one_shop = count;
    return number_of_membership_of_one_shop;
});
如果执行的请求太多,您可以选择所有成员资格,然后在客户端上对其进行计数,但这将有1000个限制,因此您可能需要采用一些其他技术:

var query = new Parse.Query("Membership");
query.select("shop_id");
query.limit(1000);
var storeCounts = [];

queryObject.find({
    success: function (results) {
        for (var i = 0; i < results.length; i++) {
            var shopId = results[i].get('shop_id');

            if (!storeCounts[shopId]) {
                storeCounts[shopId] = 0;
            }

            storeCounts[shopId]++;
        }
    },
    error: function (error) {
        alert("Error: " + error.code + " " + error.message);
    }
});
var query=newparse.query(“成员资格”);
查询。选择(“店铺标识”);
查询.限额(1000);
var-storeCounts=[];
查询对象查找({
成功:功能(结果){
对于(var i=0;i
你好,韦恩,谢谢你的回复。实际上,我正试图从解析查询API中获取一个{shop,number_of_members}数组。不想逐一查询店铺。有没有我不知道的groupby函数?这就是你想要的吗?我想Parse.com不支持groupby。我想我现在知道你想要什么了。我来看看。我的答案不是最好的。请注意,该查询有默认的100和最大1000个结果限制。您可以要求下划线并使用u.groupBy()