如何在 OrientDB 的自定义 javascript 函数中从 JSON 中提取 db.command 查询的结果
How to extract the result of a db.command query from JSON inside a custom javascript function in OrientDB
我在这个自定义 javascript 中有这个 SQL 代码。
var inLinkNodes = db.command('sql','SELECT in() FROM node where @rid = ' + relateNode);
.
return inLinkNodes;
当我 return 这个变量时,我得到以下输出:
输出:
[
{
"@type": "d",
"@rid": "#-2:0",
"@version": 0,
"in": [
“#17:9”
],
“@fieldTypes”:"in=z"
}
]
我只想要“#17:9”作为输出。
我尝试了以下命令:
return inLinkNodes[0].getRecord().field( "in" );
但这给出了以下输出:
[
{
"@type": "d",
"@rid": "#17:9",
"@version": 2,
"@class": "node",
"out_isLinkedTo": [
"#13:25"
],
"@fieldTypes": "out_isLinkedTo=g"
}
]
如何只提取“#17:9”作为字符串输出?
您可以这样尝试:
var inLinkNodes = db.command('sql','select expand(@this.exclude('@type','@rid','@version','@class')) from (SELECT in() FROM node where @rid = ' + relateNode + ')');
你可以这样做:
var inLinkNodes = db.command('sql','SELECT in().@rid FROM ' + relateNode);
希望对您有所帮助!
我在这个自定义 javascript 中有这个 SQL 代码。
var inLinkNodes = db.command('sql','SELECT in() FROM node where @rid = ' + relateNode);
.
return inLinkNodes;
当我 return 这个变量时,我得到以下输出:
输出:
[
{
"@type": "d",
"@rid": "#-2:0",
"@version": 0,
"in": [
“#17:9”
],
“@fieldTypes”:"in=z"
}
]
我只想要“#17:9”作为输出。
我尝试了以下命令:
return inLinkNodes[0].getRecord().field( "in" );
但这给出了以下输出:
[
{
"@type": "d",
"@rid": "#17:9",
"@version": 2,
"@class": "node",
"out_isLinkedTo": [
"#13:25"
],
"@fieldTypes": "out_isLinkedTo=g"
}
]
如何只提取“#17:9”作为字符串输出?
您可以这样尝试:
var inLinkNodes = db.command('sql','select expand(@this.exclude('@type','@rid','@version','@class')) from (SELECT in() FROM node where @rid = ' + relateNode + ')');
你可以这样做:
var inLinkNodes = db.command('sql','SELECT in().@rid FROM ' + relateNode);
希望对您有所帮助!