У меня есть запрос на подсчет нулевых значений в столбце. Как я могу адаптировать это для возврата количества нулевых значений в нескольких столбцах? Я попытался добавить список полей, например. [‘ip_address’,’user_agent’] в поле измерения, но это не сработало.
{"intervals":["2019-05-26T00:00:00.000Z/2019-06-25T00:00:00.000Z"],
"granularity":"all",
"context":{"timeout":60000,
"queryId":"71fe66b2-e654-45dc-8a8c-38ed160e79f5"},
"queryType":"timeseries",
"dataSource":"dataset-tablename”,
"aggregations":[{"type":"count",
"name":"count"}],
"filter":{"type":"and",
"fields":[{"type":"selector",
"dimension":"ip_address",
"value":"null"}]}}
это возвращает два столбца,
Timestamp | Count
2019-04-27T04:55:01.000Z | 246,933
который представляет собой количество записей ip_address с нулевыми значениями во временном интервале. Как я могу вернуть счетчики для других дополнительных полей?





Вы можете использовать отфильтрованные агрегаторы:
{"intervals":["2019-05-26T00:00:00.000Z/2019-06-25T00:00:00.000Z"],
"granularity":"all",
"context":{"timeout":60000, "queryId":"71fe66b2-e654-45dc-8a8c-38ed160e79f5"},
"queryType":"timeseries",
"dataSource":"dataset-tablename",
"aggregations":[
{"type":"filtered", "filter":{"type":"selector", "dimension":"ip_address", "value":"null"},
"aggregator": {"type":"count", "name":"null_ip_address_count"}},
{"type":"filtered", "filter":{"type":"selector", "dimension":"user_agent", "value":"null"},
"aggregator": {"type":"count", "name":"null_user_agent_count"}}]
}
То есть вместо того, чтобы применять фильтр ко всему запросу, применяйте фильтр к отдельным агрегаторам.