如何 quote/escape AQL for arangodb 中的字段名称?
How to quote/escape a field name in AQL for arangodb?
我找不到在哪里引用其中包含 space 的字段名称,例如在执行
时
FILTER s._key = a.`Supplier Id`
上面的 sql 式引用不起作用,数组访问也不起作用。正确的做法是什么?
想通了,被SQL坑了,忘了AQL里面是用==
做相等比较的。然后数组访问起作用了,所以使用带空格的字段名的方法是这样的:
FILTER s._key == a['Supplier Id']
如果该字段没有空格但有一些特殊字符,则可以使用反引号代替数组访问:
FILTER s._key == a.`ÅterförsäljareId`
编辑: 另一种选择是使用绑定变量:
FILTER s._key == a.@field
// Passing this to the API as bind variables:
{
"field": "Supplier Id"
}
我找不到在哪里引用其中包含 space 的字段名称,例如在执行
时FILTER s._key = a.`Supplier Id`
上面的 sql 式引用不起作用,数组访问也不起作用。正确的做法是什么?
想通了,被SQL坑了,忘了AQL里面是用==
做相等比较的。然后数组访问起作用了,所以使用带空格的字段名的方法是这样的:
FILTER s._key == a['Supplier Id']
如果该字段没有空格但有一些特殊字符,则可以使用反引号代替数组访问:
FILTER s._key == a.`ÅterförsäljareId`
编辑: 另一种选择是使用绑定变量:
FILTER s._key == a.@field
// Passing this to the API as bind variables:
{
"field": "Supplier Id"
}