0

DBに保存されているレコードのデータで結果をグループ化することは可能ですか?運が悪かったので、google-apps-scriptのドキュメントを読みました。

私は:

userLogActivity = {
  registry_type: "userLog",
  user_email: activeUser.getEmail(),
  user_loginId: activeUser.getUserLoginId(),
  user_urlAccess: activePage.getUrl(),
  user_date: currentDate.getTime()
};

そして、私はこれらのレコードを次のように取得します。

var db = ScriptDb.getMyDb();
var results = db.query({}).sortBy("user_date", db.DESCENDING);

しかし今、私はuser_dateでグループ化する必要があります。

count()関数もハンドフルになります...

ありがとう。

4

1 に答える 1

4

ScriptDbにはネイティブのgroupByがありませんが、次のように非常に簡単に模倣できます。

var results = db.query({}).sortBy("user_date", db.DESCENDING);
var grouped = {};
while (result.hasNext()) {
  var obj  = result.next();
  var key = obj.user_date; 
  grouped[key] = grouped[key] || [];
  grouped[key].push(obj);
}

ただし、カウントは組み込まれています。カウントについては、次のように置き換えdb.query({})てください。db.count({})

于 2012-12-10T20:19:27.427 に答える