# テーブル内のデータ件数を勘定したい

**URL:** <https://community.cybozu.dev/t/topic/3673>\
**Category:** kintone 開発相談\
**Created:** [2019 年 1 月 8 日午前 7:14 UTC](https://community.cybozu.dev/t/topic/3673 "2019-01-08T07:14:00Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Legacy\_Account1899](https://avatars.discourse-cdn.com/v4/letter/l/f9ae1b/32.png) [@Legacy\_Account1899](https://community.cybozu.dev/u/Legacy_Account1899)\
**Post date:** [2019 年 1 月 8 日午前 7:14 UTC](https://community.cybozu.dev/t/topic/3673/1 "2019-01-08T07:14:00Z")

</div>

テーブル内に以下のデータがあるとします

レコード1

AAA あああ 000

AAA あああ 111

BBB いいい 333

レコード2

AAA あああ 222

BBB いいい 123

CCC ううう 321

&nbsp;

AAAが3行あるので、これを「3」とカウントして集計したいのですが、可能でしょうか？

AAA 3

BBB 2

CCC 1

という結果が得られれば大満足となります。

&nbsp;

対象レコードが2つとなるため、レコード数2は集計で出せているのですが、

これでは現時点で不満足です。

なにか良い手段はありませんでしょうか？

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1566](https://avatars.discourse-cdn.com/v4/letter/l/b19c9b/32.png) [@Legacy\_Account1566](https://community.cybozu.dev/u/Legacy_Account1566)\
**Post date:** [2019 年 1 月 9 日午前 11:01 UTC](https://community.cybozu.dev/t/topic/3673/2 "2019-01-09T11:01:39Z")

</div>

[https://jp.cybozu.help/k/ja/user/app\_collectdata/summarize/summarize\_details.html](https://jp.cybozu.help/k/ja/user/app_collectdata/summarize/summarize_details.html)

[テーブル](https://jp.cybozu.help/k/ja/user/app_settings/form/table.html)内のフィールドを使用してレコードを絞り込む場合、テーブルのいずれかの行でフィールドの値が絞り込み条件を満たせば、そのレコードは集計対象になります。

ということで、スクリプトを使わない方法で、こんな方法はいかがでしょうか？

例えば、集計用の「カウント値」というフィールドをテーブルに追加して、グラフで集計してしまう方法。

&nbsp;

※スクリプトで対応する場合は、全てのレコードのサブテーブル情報を取得して、ループで回して集計を行います。

それをカスタマイズビューなどに表示すれば良いかと存じます。

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1566](https://avatars.discourse-cdn.com/v4/letter/l/b19c9b/32.png) [@Legacy\_Account1566](https://community.cybozu.dev/u/Legacy_Account1566)\
**Post date:** [2019 年 1 月 9 日午前 11:21 UTC](https://community.cybozu.dev/t/topic/3673/3 "2019-01-09T11:21:46Z")

</div>

スクリプトで集計してみるなら、こんな感じでどうでしょうか？

var body= {

“app”:kintone.app.getId(),

“fields”: [“サブテーブルのフィールドコード”]

};

//１．すべてのレコードのサブテーブル情報を取得する

kintone.api(kintone.api.url(‘/k/v1/records’, true), ‘GET’, body, function (resp) {

// success

var records=resp.records;

var array=new Array();

//２．レコードでループ

records.forEach(function (record) {

var tableRow=record[“サブテーブルのフィールドコード”].value;

&nbsp;

//テーブル行でループ

tableRow.forEach(function (row) {

```
 var value=row.value["Aフィールドのフィールドコード"].value;

 //Aフィールドの値ごとに数を数える

 if (array[value] == null) array[value] =1;

 else array[value] +=1;

```

});

});

//集計結果を出力して確認してみる

for(var key in array){

console.log(key, “:”, array[key]);

};

}, function (error) {

// error

console.log(error);

});

&nbsp;

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1899](https://avatars.discourse-cdn.com/v4/letter/l/f9ae1b/32.png) [@Legacy\_Account1899](https://community.cybozu.dev/u/Legacy_Account1899)\
**Post date:** [2019 年 1 月 10 日午前 12:22 UTC](https://community.cybozu.dev/t/topic/3673/4 "2019-01-10T00:22:18Z")

</div>

ありがとうございます！！！

標準機能(スクリプトではない)にて対応できました！

カウント用の数字を設けるアイデア、すばらしいですね！

&nbsp;

助かりました。これで一つ前進できそうです。。。
