所有
使用Keen.io提取一些分析。我允许用户输入指定开始和结束时间,但我无法找到与“限制”参数等效的内容,例如可以在SQL查询中找到。如果用户指定足够大的范围,则可能导致返回太多数据。
Keen.io有办法撤回第一个“x”记录吗?
bower.json
"keen-js": "^3.4.1",
答案 0 :(得分:3)
今天发布了一项新的Keen IO API功能,可让您限制查询结果,以获得最佳x结果"并按升序或降序排列结果。 order_by
的工作方式与当前现有的group_by
功能类似 - 您将在查询中调用order_by
。
定义direction
以ASC
或降序排序所有查询结果(默认排序为升序)。并使用limit
告诉API您要返回的结果数量 - 无论是您的前5名还是后5名结果。
按文档排序:https://keen.io/docs/api/#order-by
以下是JavaScript示例,用于说明新添加的order_by
API功能:
import Keen from 'keen-js';
const client = new Keen({
projectId: 'PROJECT_ID',
readKey: 'READ_KEY'
});
client
.query('count', {
event_collection: 'logins',
group_by: 'user.email',
order_by: {'property_name': 'result', 'direction': 'DESC'},
limit: '5', //this limits your number of results
timeframe: 'this_14_days'
})
.then(res => {
// Handle results
})
.catch(err => {
// Handle errors
});

order_by
和limit
一直是客户的最高要求 - 感谢您提供反馈,以帮助创建Keen IO's API的工具和功能。
答案 1 :(得分:1)
查看文档看起来,将结果限制在timeframe
的最简单方法是将结果分组到[interval][1]
。
它不是一个完美的解决方案,因为您最终得到的是分组数据而不是单个记录,但确实可以保证结果有限