过滤器orderby的RethinkDB索引
发布时间:2020-12-12 06:50:37 所属栏目:MsSql教程 来源:网络整理
导读:让我们说评论表具有以下结构: id | author | timestamp | body 我想使用索引有效地执行以下查询: r.table('comments').getAll("me",{index: "author"}).orderBy('timestamp').run(conn,callback) 我可以使用其他有效的方法吗? 看起来当前索引不支持表的过
让我们说评论表具有以下结构:
id | author | timestamp | body 我想使用索引有效地执行以下查询: r.table('comments').getAll("me",{index: "author"}).orderBy('timestamp').run(conn,callback) 我可以使用其他有效的方法吗? 看起来当前索引不支持表的过滤结果.创建时间戳索引并将其作为提示添加到orderBy(‘timestamp’,{index:timestamp})时,我收到以下错误:
解决方法这可以通过“author”和“timestamp”字段上的复合索引来完成.您可以像这样创建这样的索引:r.table("comments").index_create("author_timestamp",lambda x: [x["author"],x["timestamp"]]) 然后您可以使用它来执行查询,如下所示: r.table("comments") .between(["me",r.minval],["me",r.maxval] .order_by(index="author_timestamp) 这两者之间的作用类似于原始查询中的get_all,因为它只获取具有作者“me”和任何时间戳的文档.然后我们对按时间戳排序的相同索引执行order_by(因为所有键都有相同的作者.)这里的关键是每个表访问只能使用一个索引,所以我们需要将所有这些信息填入相同的指数. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 为什么我们需要像PostMSQL这样的数据库上的RabbitMQ等消息代
- sql-server – 规范化SQL Server中的unicode字符串?
- Mysql闪退问题图文解决办法
- sql-server-2008 – 获取星期的开始和结束日期?在Sql serv
- SqlServer存储过程分页查询
- 哪个是SQL Server数据库中最常见的ID类型,哪个更好?
- sqlserver excel 导入数据(图解)
- sql-server – SSRS BIDS 2008解决方案资源管理器子文件夹,
- SQL查询:Subtable中的EXISTS
- SqlServer和Oracle中一些常用的sql语句5 流程控制语句