在ArangoDB的上下文中,有不同的数据库shell来查询数据:
arangosh:基于JavaScript的控制台
AQL:Arangodb查询语言,请参阅http://www.arangodb.org/2012/06/20/querying-a-nosql-database-the-elegant-way
MRuby:Embedded Ruby
虽然我理解使用JavaScript和MRuby,但我不确定为什么要学习,以及我将使用AQL的地方。有没有关于此的信息?是否将AQL直接POST到数据库服务器?
答案 0 :(得分:6)
AQL是ArangoDB的查询语言。它有很多方法可以查询,过滤,排序,限制和修改将返回的结果。应该注意的是,AQL只读取数据。
(更新:这个答案针对的是ArangoDB的旧版本。从版本2.2开始,这些功能已经扩展,AQL也可以对数据库进行数据修改。有关详细信息,请访问答案末尾的文档链接。)
您无法使用AQL将数据存储到数据库中。
与AQL相比,Javascript或MRuby可以读取数据并将数据存储到数据库中。 但是,与使用AQL打开的可能性相比,它们的查询功能非常基础且有限。
虽然可以从javascript发送AQL查询。 在arangosh Javascript shell中,您将发出如下的AQL查询:
arangosh> db._query('FOR user IN example FILTER user.age > 30 RETURN user').toArray()
[
{
_id : "4538791/6308263",
_rev : "6308263",
age : 31,
name : "Musterfrau"
}
]
您可以在此处找到有关AQL的更多信息: http://www.arangodb.org/manuals/current/Aql.html