如果我执行类似 select from #12:1
的操作,显然,它将返回完整文档:
{
"result": [
{
"@type": "d",
"@rid": "#12:1",
"@version": 1,
"@class": "Package",
"name": "MsPortfolioStack4.Repository-1.0.4549.25474-alpha",
"p_name": "MsPortfolioStack4.Repository",
"p_ver": "1.0.4549.25474-alpha",
"tags": [
"#14:1",
"#14:2"
],
"@fieldTypes": "tags=z"
}
],
"notification": "Query executed in 0.022 sec. Returned 1 record(s)"
}
现在,如果我有一个 JS 函数可以执行此操作:
function return_node(query) {
return query;
}
然后我执行select return_node((select from #12:1))
,我只得到RID:
{
"result": [
{
"@type": "d",
"@rid": "#-2:1",
"@version": 0,
"return_node": [
"#12:1"
],
"@fieldTypes": "return_node=z"
}
],
"notification": "Query executed in 0.058 sec. Returned 1 record(s)"
}
是否可以返回实际的扩展文档而不仅仅是 RID?目前最快的方法似乎是遍历结果,但这是多余的。
最佳答案
可以更改JS函数
var db=orient.getDatabase(); 返回 db.query(查询);
并执行 select Expand(return_node("从#12:1中选择")) from (select return_node("从#12:1中选择"))
关于javascript - 如何从 JavaScript 函数返回文档/节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33166054/