AQL & SQL
SQL | 例子 | 含义 | 例子 | AQL |
---|---|---|---|---|
SELECT | SELECT * FROM table_name; | 从 数据表 / 集合 中提取数据 | FOR c IN collection_name RETURN c | RETURN |
UPDATE | UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value; | 更新 数据表 / 集合 中的数据 | UPDATE _key WITH {attribute: value} IN collection_name | UPDATE |
DELETE | DELETE FROM table_name WHERE some_column=some_value; | 从 数据表 / 集合 中删除数据 | REMOVE _key IN collection_name | REMOVE |
INSERT INTO | INSERT INTO table_name (column1,column2,...) VALUES (value1,value2,...); | 向 数据表 / 集合 中插入新数据 | INSERT { "attribute1": "value1", "attribute2": "value2" } INTO collection_name | INSERT INTO |
CREATE TABLE | CREATE TABLE table_name( column_name1 data_type(size), column_name2 data_type(size), .... ); | 创建新表 | – | – |
DROP TABLE | DROP TABLE table_name | 删除表 | – | – |
AQL 之 组合 的用法 ?
✒️语法:MERGE()
MERGE() 的功能是将对象组合在一起。
将多个文档合并为一个文档:
- 具有不同属性名称的两个文档可以轻松地合并为一个:
MERGE( { "user1": { "name": "Kitty" } }, { "user2": { "name": "Miao" } } ) // { "user1": { "name": "Kitty" }, "user2": { "name": "Miao" } }
- 合并具有相同属性名称的文档时,最终结果将使用后一文档的属性值:
MERGE( { "users": { "name": "Kitty" } }, { "users": { "name": "Miao" } } ) // { "users": { "name": "Miao" } }
✒️语法:MERGE_RECURSIVE()
MERGE_RECURSIVE(
{ "user-1": { "name": "Jane", "livesIn": { "city": "LA" } } },
{ "user-1": { "age": 42, "livesIn": { "state": "CA" } } }
)
Arangosh.exe
Arangosh.exe
是 ArangoDB 数据库 Shell环境,客户端实现 Read-Eval-Print-Loop(REPL)和提供的功能来访问和管理 arangodb 服务器。
开始使用
-
前提:ArangoDB 服务器已被启用
/usr/local/Cellar/arangodb/3.5.0_1/sbin/arangod
-
启动 shell
/usr/local/Cellar/arangodb/3.5.0_1/bin/arangosh
简单的 shell 说明
- 数据库操作
- 获取 _system 数据库名
require("@arangodb").db._name();
- 创建数据库
db._createDatabase("test1");
- 列出所有数据库
db._databases();
- 删除数据库
db._dropDatabase("test1");
- 切换数据库
db._useDatabase("scores");
- 集合操作
-
创建集合
db._create("scores");
-
罗列集合
db._collections();
-
删除集合
db._drop("test");
- 数据操作
- 增
db.scores.insert({"name":"kukky","class":"web","score":95});
- 改
db.scores.update({"_key":"155648"},{"score":96});
- 删
db.scores.remove({"_key":"155648"});
- 查
//有条件 db.scores.byExample({"name":"kukky"}).toArray(); //没条件,所有的都查询 db.scores.byExample().toArray();
? 相关链接: