在 ydn-db 中是不是可以进行多次搜索?
Posted
技术标签:
【中文标题】在 ydn-db 中是不是可以进行多次搜索?【英文标题】:Is multiple search possible in ydn-db?在 ydn-db 中是否可以进行多次搜索? 【发布时间】:2016-05-04 00:03:12 【问题描述】:我想做以下查询,
1) 类似的多查询
SELECT * FROM table_name WHERE username="Tom" OR lastname="Gordon" OR city="New York";
2) AND 和 OR 操作的组合。例如:
SELECT * FROM table_name WHERE username="Tom" OR lastname="Gordon" AND age=25;
【问题讨论】:
【参考方案1】:使用SortedMerge or ZigZagMerge 可以进行多个AND。请参阅here for documentation 和here for example。
使用 db.scan 进行 OR 查询。
这两种查询可以组合在一起,只要OR是节点的顶部,即析取范式。
不幸的是,这些查询在流畅的Query API 中还不可用,现在使用起来太糟糕了。
【讨论】:
感谢 Kyaw 的回复。我想知道如果我们使用 NestedLoop 或 SortedMerge 或 ZigZarMerge,索引迭代器是否有任何限制?我尝试使用范围迭代器,但结果遗漏了几条记录。 示例:var li_iter = ydn.db.IndexIterator.where('multiQ', 'license', '>', 'SA'); var li_iter1 = ydn.db.IndexIterator.where('multiQ', 'license', '', 'Boat'); var book_iter1 = ydn.db.IndexIterator.where('multiQ', 'book', ' @user3273859 我添加了文档链接。以上是关于在 ydn-db 中是不是可以进行多次搜索?的主要内容,如果未能解决你的问题,请参考以下文章
如何将数据从 ydn-db Web 应用程序同步到后端服务器?
是否可以在 ydn-db 中编写类似于 SQL“IN”或多个“AND”子句的查询?