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();
🔗 相關鏈接: