关于查询集合中的文档
您可以使用筛选器规范或按示例查询 (QBE) 在集合中搜索一个或多个文档。
QBE 是以 JSON 表示的模式。您可以使用它从集合中选择与其内容匹配的 JSON 文档,这意味着模式所表示的条件仅对这些文档的内容求值结果为 true。有关 QBE 及其使用方法的更多信息,请参阅Oracle AI Database Introduction to Simple Oracle Document Access (SODA) 中的 SODA QBE 概述。
对于特定集合,请在 JSON 编辑器中输入 QBE 字符串。例如,要选择名称为 Mary 的文档,请输入 {"name":"Mary"},然后单击运行查询,如图 5-2 中所示。查询结果显示在右下方窗格中。
编辑器提供了可通过 "Command Palette"(命令调色板)提供的命令的完整列表。要打开命令选项板,请按 Ctrl+Shift+P 。有关键盘快捷键的列表,请参见 Keyboard Shortcuts 。
查询中的错误由左侧地沟中的红色点和特定文本下方的扭曲行表示。将鼠标悬停在上面时,将看到一个弹出窗口,其中显示用于解决错误的可能修复程序。
您可以使用标题右上角用户下拉列表中的首选项选项设置编辑器首选项。某些可用选项包括主题(浅色、深色和高对比度深色)、字体大小和系列、制表符大小、Word 包装、标尺、行号等。
编辑器上方的图标包括:
-
格式化 JSON 数据
:为 QBE 字符串启用缩进和换行。
-
添加子句:将 $orderby 或 $patch 子句的格式化模板添加到 QBE 字符串。
-
清除
:清除当前 QBE 字符串。
-
历史记录
:检索以前的 QBE 搜索字符串。
QBE 表达式必须是有效的 JSON 对象,可以包含 $query 和 $orderby 或 $patch 子句。如果没有定义子句,QBE 表达式将被视为 $query 子句。从 $query 子句开始,稍后使用添加条款列表添加 $orderby 或 $patch 子句。将转换内容,并提供 $orderby 和 $patch 子句的模板。您需要在模板中设置正确的值。请参阅在 JSON 编辑器中使用上下文中自动完成功能
例如,这是一个简单的筛选查询:

插图 plain_query.png 的说明
使用添加条款添加 $orderby 子句后,您将看到以下条目:

插图 orderby_clause.png 的说明
添加 $patch 子句后,查询将更改为:

插图 patch_clause.png 的说明
- 在 JSON 编辑器中使用上下文中自动完成功能
如果按 Ctrl+Space ,编辑器将为您提供上下文感知选项列表,您可以从中选择选项并在插入点自动完成。
父主题:JSON 页
在 JSON 编辑器中使用上下文中自动完成功能
如果按 Ctrl+Space ,编辑器将为您提供可识别上下文的选项列表,您可以从中在插入点选择和自动完成。

插图 json_code_completion.png 的说明
列表中将显示以下类型的信息:
-
筛选比较条款
每个子句都有一个模板,该模板插入到光标位置。例如,从自动补全列表中选择
$between子句时,将在编辑器中看到以下条目:其中
age是属性名称,49和70是值。这些是您可以编辑的参数,它们会突出显示。您可以键入或使用自动补全帮助来编辑属性名称。按 Tab 键可移动到下一个参数。 -
集合中 JSON 文档的属性名称
JSON 文档中有两个属性名称源:
-
如果创建搜索索引时支持数据指南,则会扫描数据库字典中的 JSON 数据指南以查找属性名称。
-
将显示从查看或编辑的文档收集的属性名称。属性名称可能是整个名称空间中的一个子集。
根据属性的类型,将插入相关模板,并将光标定位在预期的插入位置。以下是属性类型、其模板和每个属性的对应光标位置的列表:
-
对象
"ShippingInstructions.Address": { <cursor_here> } -
Array
"LineItems": [<cursor_here>] -
字符串
"LineItems[*].Part.Description": "<cursor_here>]" -
数字
"PONumber": 0 -
布尔
"site_admin": true
如果光标位于双引号 ("") 之间并且激活了自动完成,则仅插入属性名称而不插入模板或附加双引号。
-
父主题:关于查询集合中的文档

