中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

工商注冊網(wǎng)寧波seo入門教程

工商注冊網(wǎng),寧波seo入門教程,小說網(wǎng)站怎么做流量,最簡單的電子商務(wù)網(wǎng)站建設(shè)代碼Nebula基礎(chǔ)的查詢操作介紹 這里只是對Nebula基礎(chǔ)查詢進行介紹,其目的是為了讓未接觸過Nebula的同學(xué)最短時間了解其語句。更詳細更準確的內(nèi)可以查看官方文檔。 docs.nebula-graph 關(guān)于查詢這里并沒有使用官方例子數(shù)據(jù),而是自己實際嘗試了文檔中的語句。 …

Nebula基礎(chǔ)的查詢操作介紹

這里只是對Nebula基礎(chǔ)查詢進行介紹,其目的是為了讓未接觸過Nebula的同學(xué)最短時間了解其語句。更詳細更準確的內(nèi)可以查看官方文檔。 docs.nebula-graph

關(guān)于查詢這里并沒有使用官方例子數(shù)據(jù),而是自己實際嘗試了文檔中的語句。

其他內(nèi)容

Nebula基礎(chǔ)的操作介紹

數(shù)據(jù)準備

創(chuàng)建標簽

CREATE TAG Person(name string, age int, type string);
CREATE TAG Employee(workingAge int);

創(chuàng)建邊類型

CREATE EDGE FRIEND(year int);
CREATE EDGE SUBORDINATE();

創(chuàng)建帶標簽的點

INSERT VERTEX Person(name, age, type) VALUES
"5":("小明", 40, "領(lǐng)導(dǎo)"),
"17":("小靜", 45, "領(lǐng)導(dǎo)"),
... (省略其他插入語句)

插入SUBORDINATE邊類型

INSERT EDGE SUBORDINATE() VALUES "7"->"1"@0:(), "7"->"3"@0:(), "7"->"4"@0:(), "7"->"6"@0:(), "7"->"8"@0:() ;
... (省略其他插入語句)

插入FRIEND邊類型

INSERT EDGE FRIEND(year) VALUES
"1"->"2"@0:( 5),
"2"->"3"@0:( 3),
"3"->"4"@0:( 3),
... (省略其他插入語句)

創(chuàng)建索引

CREATE TAG INDEX Person_index on Person();
CREATE TAG INDEX Employee_index on Employee();CREATE TAG INDEX Person_index_1 on Person(name(10), age, type(10));
CREATE TAG INDEX Employee_index_1 on Employee(workingAge);CREATE EDGE INDEX FRIEND_index on FRIEND(year);
CREATE EDGE INDEX SUBORDINATE_index on SUBORDINATE();

重建索引數(shù)據(jù)

REBUILD TAG INDEX Person_index,Employee_index;REBUILD TAG INDEX Employee_index_1,Person_index_1;REBUILD EDGE INDEX FRIEND_index,SUBORDINATE_index;

確定重建狀態(tài)

SHOW TAG INDEX STATUS;

一些變量說明

下面查詢中一些變量的說明

起始點

$^.<tag_name>.<prop_name>
  • $^: 表示起始點。
  • <tag_name>: 表示點的 Tag 名稱。
  • <prop_name>: 表示 Tag 內(nèi)的屬性名稱。

目的點

$$.<tag_name>.<prop_name>
  • $$: 表示目的點。
  • <tag_name>: 表示點的 Tag 名稱。
  • <prop_name>: 表示 Tag 內(nèi)的屬性名稱。

查詢語句 - MATCH

MATCH語句提供基于模式(Pattern)匹配的搜索功能。在進行查詢時,MATCH語句使用的路徑類型是trail,這意味著點可以重復(fù)出現(xiàn),但邊不能重復(fù)。
需要注意,我這里使用的是3.0.0版本。在EDGE和TAG操作中需要創(chuàng)建索引

匹配點

匹配所有點

# 在數(shù)據(jù)庫中匹配所有節(jié)點,然后返回前 5 個節(jié)點
MATCH (v) RETURN v LIMIT 5;# 返回結(jié)果
("1" :Person{age: 30, name: "張三", type: "員工"})
("13" :Person{age: 28, name: "小麗", type: "員工"})
("16" :Person{age: 22, name: "小敏", type: "員工"})
("20" :Person{age: 22, name: "小明", type: "員工"})
("8" :Person{age: 33, name: "小花", type: "員工"})

匹配 Tag

匹配單個標簽

# 在數(shù)據(jù)庫中匹配具有 "Person" 標簽的節(jié)點
MATCH (v:Person) RETURN v LIMIT 3;# 返回結(jié)果
("1" :Person{age: 30, name: "張三", type: "員工"})
("13" :Person{age: 28, name: "小麗", type: "員工"})
("8" :Person{age: 33, name: "小花", type: "員工"})

匹配多個標簽

# 在數(shù)據(jù)庫中匹配同時具有 "Person" 和 "Employee" 標簽的節(jié)點
MATCH (v:Person:Employee) RETURN v LIMIT 2;# 返回結(jié)果
("2" :Employee{workingAge: 4} :Person{age: 35, name: "李四", type: "領(lǐng)導(dǎo)"})
("7" :Employee{workingAge: 2} :Person{age: 45, name: "小李", type: "領(lǐng)導(dǎo)"})

匹配點的屬性

需要注意:

  • NebulaGraph 3.0.0 之前,匹配 Tag 的前提是 Tag 本身有索引或者 Tag 的某個屬性有索引。
  • NebulaGraph 3.0.0 開始,匹配 Tag 可以不創(chuàng)建索引,但需要使用 LIMIT 限制輸出結(jié)果數(shù)量。
  • NebulaGraph 3.5.0 開始,MATCH 語句支持全表掃描,無需為 Tag 或 Tag 的某個屬性創(chuàng)建索引,或者使用 LIMIT 限制輸出結(jié)果數(shù)量,即可執(zhí)行 MATCH 語句。

MATCH 匹配標簽屬性

#  在數(shù)據(jù)庫中匹配具有 "Person" 標簽且屬性 "age" 為 35 的節(jié)點
MATCH (v:Person{age: 35}) RETURN v LIMIT 2;# 返回結(jié)果
("12" :Person{age: 35, name: "小楊", type: "領(lǐng)導(dǎo)"})
("2" :Employee{workingAge: 4} :Person{age: 35, name: "李四", type: "領(lǐng)導(dǎo)"})

WHERE 匹配標簽屬性

#
MATCH (v:Person) WHERE v.Person.age == 35 RETURN v LIMIT 2;# 返回結(jié)果
("2" :Employee{workingAge: 4} :Person{age: 35, name: "李四", type: "領(lǐng)導(dǎo)"})
("12" :Person{age: 35, name: "小楊", type: "領(lǐng)導(dǎo)"})

匹配點 ID

用戶可以使用點 ID 去匹配點。id()函數(shù)可以檢索點的 ID。

#
MATCH (v) WHERE id(v) == '1' RETURN v;# 返回結(jié)果
("1" :Person{age: 30, name: "張三", type: "員工"})

匹配多個ID

注意:你必須先指定 Tag/EdgeType,或者用 LIMIT 子句限制返回數(shù)量,才能獲取對應(yīng)類型的所有的點和邊。

#
MATCH (v:Person) WHERE id(v) IN {'1','2'} RETURN v;# 返回結(jié)果
("2" :Employee{workingAge: 4} :Person{age: 35, name: "李四", type: "領(lǐng)導(dǎo)"})
("1" :Person{age: 30, name: "張三", type: "員工"})

返回屬性

#
MATCH (v:Person) WHERE id(v) IN {'1','2'} RETURN v.Person.name AS name;# 返回結(jié)果
李四
張三

匹配連接的點

使用–符號表示兩個方向的邊

#
MATCH (v:Person{name:"小明"})--(v2:Person) RETURN v2.Person.name AS Name;# 返回結(jié)果
小芳
李四
小靜
趙六
小紅

在–符號上增加<或>符號指定邊的方向

#
MATCH (v:Person{name:"小明"})-->(v2:Person) RETURN v2.Person.name AS Name;# 返回結(jié)果
李四
小紅
小靜

增加更多點和邊

#
MATCH (v:Person{name:"小明"})-->(v2:Person)-->(v3) RETURN v3.player.name AS Name;# 如果不需要引用點,可以省略括號中表示點的變量。
MATCH (v:Person{name:"小明"})-->()-->(v3) RETURN v3.player.name AS Name;# 返回結(jié)果
小芳
小李
小李
王五
王五
小楊

匹配路徑

查詢點的邊

#
MATCH p=(v:Person{name:"小明"})-->(v2) RETURN p;# 返回結(jié)果
<("5" :Employee{workingAge: 10} :Person{age: 40, name: "小明", type: "領(lǐng)導(dǎo)"})-[:SUBORDINATE@0 {}]->("2" :Employee{workingAge: 4} :Person{age: 35, name: "李四", type: "領(lǐng)導(dǎo)"})>
<("5" :Employee{workingAge: 10} :Person{age: 40, name: "小明", type: "領(lǐng)導(dǎo)"})-[:FRIEND@0 {year: 6}]->("6" :Person{age: 22, name: "小紅", type: "員工"})>
<("5" :Employee{workingAge: 10} :Person{age: 40, name: "小明", type: "領(lǐng)導(dǎo)"})-[:SUBORDINATE@0 {}]->("17" :Employee{workingAge: 8} :Person{age: 45, name: "小靜", type: "領(lǐng)導(dǎo)"})>

查詢存在的邊

#
MATCH ()<-[e]-() RETURN e LIMIT 3;# 返回結(jié)果
[:FRIEND "7"->"8" @0 {year: 2}]
[:SUBORDINATE "7"->"8" @0 {}]
[:SUBORDINATE "7"->"1" @0 {}]

根據(jù)類型查詢存在的邊

#
MATCH ()-[e:SUBORDINATE]->() RETURN e LIMIT 3;# 返回結(jié)果
[:SUBORDINATE "17"->"7" @0 {}]
[:SUBORDINATE "17"->"15" @0 {}]
[:SUBORDINATE "5"->"2" @0 {}]

根據(jù)邊的屬性查詢邊

#
MATCH (v)-[e:FRIEND{year:3}]->(v2) WHERE id(v) == "2" RETURN e;# 返回結(jié)果
[:FRIEND "2"->"3" @0 {year: 3}]

對點補充過濾

#
MATCH (v:Person{name:"李四"})-[e:FRIEND{year:3}]->(v2) RETURN e;# 返回結(jié)果
[:FRIEND "2"->"3" @0 {year: 3}]

匹配多個類型的邊

#
MATCH (v:Person{name:"小明"})-[e:SUBORDINATE|FRIEND]->(v2) RETURN e;# 返回結(jié)果
[:FRIEND "5"->"6" @0 {year: 6}]
[:SUBORDINATE "5"->"17" @0 {}]
[:SUBORDINATE "5"->"2" @0 {}]

匹配多條邊

用戶可以擴展模式,匹配路徑中的多條邊。

#
MATCH (v:Person{name:"小明"})-[]->(v2)<-[e:FRIEND]-(v3) RETURN v2, v3;

匹配定長路徑

使用<edge_type>*匹配定長路徑。hop必須是一個非負整數(shù)。

#
MATCH (v:Person{name:"小明"})-[e:FRIEND*3]->(v2) RETURN DISTINCT v2;# 返回結(jié)果
("8" :Person{age: 33, name: "小花", type: "員工"})

匹配變長路徑

用戶可以在模式中使用<edge_type>*[minHop…maxHop]匹配變長路徑。

minHop 可選項。表示路徑的最小長度。minHop必須是一個非負整數(shù),默認值為 1。
maxHop 可選項。表示路徑的最大長度。maxHop必須是一個非負整數(shù),默認值為無窮大。

# 在數(shù)據(jù)庫中匹配具有 "Person" 標簽且屬性 "name" 為 "小明" 的節(jié)點,以及從它們出發(fā)的類型為 "FRIEND" 的邊,跳過 3 到 5 次后到達的節(jié)點,然后返回這些節(jié)點。
MATCH (v:Person{name:"小明"})-[e:FRIEND*3..5]->(v2) RETURN v2;

返回結(jié)果

("9" :Person{age: 28, name: "大海", type: "員工"})
("10" :Person{age: 22, name: "小雨", type: "員工"})
("8" :Person{age: 33, name: "小花", type: "員工"})
("10" :Person{age: 22, name: "小雨", type: "員工"})
("9" :Person{age: 28, name: "大海", type: "員工"})
("10" :Person{age: 22, name: "小雨", type: "員工"})

用戶可以使用DISTINCT關(guān)鍵字聚合重復(fù)結(jié)果。

# 從名為 "小明" 的 "Person" 類型節(jié)點出發(fā),通過不定長度的 "FRIEND" 邊(跳數(shù)在 3 到 5 范圍內(nèi)),到達的節(jié)點為 "v2",返回不重復(fù)的 "v2" 節(jié)點及其出現(xiàn)的次數(shù)。
MATCH (v:Person{name:"小明"})-[e:FRIEND*3..5]->(v2) RETURN DISTINCT v2, COUNT(v2) AS count;

返回結(jié)果

V2count
(“8” :Person{age: 33, name: “小花”, type: “員工”})1
(“9” :Person{age: 28, name: “大海”, type: “員工”})2
(“10” :Person{age: 22, name: “小雨”, type: “員工”})3

多個Edge type設(shè)置路徑

用戶可以指定多個 Edge type 的 hop、minHop和maxHop,這些配置對所有 Edge type 都生效。

# 從名為 "小明" 的 "Person" 類型節(jié)點出發(fā),通過不定長度的 "SUBORDINATE" 或 "FRIEND" 邊(跳數(shù)在 1 到 2 范圍內(nèi)),到達的節(jié)點為 "v2",返回不重復(fù)的 "v2" 節(jié)點及其出現(xiàn)的次數(shù)。
MATCH (v:Person{name:"小明"})-[e:SUBORDINATE|FRIEND*1..2]->(v2) RETURN DISTINCT v2, COUNT(v2) AS count;

返回結(jié)果

V2count
(“3” :Person{age: 28, name: “王五”, type: “員工”})1
(“12” :Person{age: 35, name: “小楊”, type: “領(lǐng)導(dǎo)”})1
(“6” :Person{age: 22, name: “小紅”, type: “員工”})1
(“17” :Employee{workingAge: 8} :Person{age: 45, name: “小靜”, type: “領(lǐng)導(dǎo)”})1
(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})2
(“15” :Person{age: 40, name: “小芳”, type: “領(lǐng)導(dǎo)”})1
(“2” :Employee{workingAge: 4} :Person{age: 35, name: “李四”, type: “領(lǐng)導(dǎo)”})1

匹配多個模式

用戶可以用英文逗號(,)分隔多個模式。

# 匹配具有標簽 "Person" 且屬性 "type" 為 "領(lǐng)導(dǎo)" 的節(jié)點 "v1",以及具有標簽 "Employee" 且屬性 "workingAge" 為 2 的節(jié)點 "v2",然后返回這些節(jié)點。
MATCH (v1:Person{type:"領(lǐng)導(dǎo)"}), (v2:Employee{workingAge:2}) RETURN v1,v2;

返回結(jié)果

v1v2
(“17” :Employee{workingAge: 8} :Person{age: 45, name: “小靜”, type: “領(lǐng)導(dǎo)”})(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})
(“12” :Person{age: 35, name: “小楊”, type: “領(lǐng)導(dǎo)”})(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})
(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})
(“15” :Person{age: 40, name: “小芳”, type: “領(lǐng)導(dǎo)”})(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})
(“2” :Employee{workingAge: 4} :Person{age: 35, name: “李四”, type: “領(lǐng)導(dǎo)”})(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})
(“5” :Employee{workingAge: 10} :Person{age: 40, name: “小明”, type: “領(lǐng)導(dǎo)”})(“7” :Employee{workingAge: 2} :Person{age: 45, name: “小李”, type: “領(lǐng)導(dǎo)”})

LOOKUP

  1. 檢索指定 Tag 的所有點 ID。
  2. 檢索指定 Edge type 的所有邊的起始點、目的點和 rank。
  3. 統(tǒng)計包含指定 Tag 的點或?qū)儆谥付?Edge type 的邊的數(shù)量。
  4. 根據(jù) WHERE 搜索特定數(shù)據(jù)。
# 語法
LOOKUP ON {<vertex_tag> | <edge_type>}
[WHERE <expression> [AND <expression> ...]]
YIELD <return_list> [AS <alias>]
[<clause>];
# 返回結(jié)果
<return_list><prop_name> [AS <col_alias>] [, <prop_name> [AS <prop_alias>] ...];

參數(shù)說明

參數(shù)說明
WHERE 指定遍歷的過濾條件,還可以結(jié)合布爾運算符 AND 和 OR 一起使用。詳情請參見 WHERE。
YIELD定義需要返回的輸出。詳情請參見 YIELD。
AS設(shè)置別名。
clause支持 ORDER BY、LIMIT 子句。

查詢點信息

于標簽(TAG)的屬性進行過濾

# 在 "Person" 類型節(jié)點中查找具有 "name" 屬性為 "張三" 的節(jié)點,并返回這些節(jié)點的 ID。
LOOKUP ON Person WHERE Person.name == "張三" YIELD id(vertex);

返回數(shù)據(jù)

id(VERTEX)
1

基于標簽(TAG)的多個進行過濾

# 在 "Person" 類型節(jié)點中查找具有 "type" 屬性為 "領(lǐng)導(dǎo)" 且 "age" 屬性為 35 或 28 的節(jié)點,并返回這些節(jié)點的 "name" 和 "age" 屬性。
LOOKUP ON Person WHERE Person.type == "領(lǐng)導(dǎo)"  AND Person.age IN [35,28] YIELD properties(vertex).name, properties(vertex).age;

返回數(shù)據(jù)

properties(VERTEX).nameproperties(VERTEX).age
小楊35
李四35

檢索邊

基于邊的條件進行過濾,并返回邊信息

# 查找具有 "year" 屬性為 3 的 "FRIEND" 類型邊,并返回這些邊。
LOOKUP ON FRIEND WHERE FRIEND.year == 3 YIELD edge AS e;

返回數(shù)據(jù)

e
[:FRIEND “2”->“3” @0 {year: 3}]
[:FRIEND “3”->“4” @0 {year: 3}]

基于邊的條件進行過濾,并返回邊信息的屬性

# 查找具有 "year" 屬性為 3 的 "FRIEND" 類型邊,并返回這些邊的 "year" 屬性。
LOOKUP ON FRIEND WHERE FRIEND.year == 3  YIELD properties(edge).year;

返回數(shù)據(jù)

properties(EDGE).year
3
3

查詢包含某種邊的點信息

# 查找所有 "Person" 類型節(jié)點,并返回這些節(jié)點的 ID,然后限制結(jié)果返回前 4 條。
LOOKUP ON Person YIELD id(vertex) | LIMIT 4;

返回數(shù)據(jù)

id(VERTEX)
12
17
5
3

統(tǒng)計點和邊的數(shù)量

#  查找所有 "Person" 類型節(jié)點,返回這些節(jié)點的 ID,并計算節(jié)點數(shù)目。
LOOKUP ON Person YIELD id(vertex)| YIELD COUNT(*) AS Person_Number;

返回數(shù)據(jù)

Person_Number
20
# 查找所有 "FRIEND" 類型邊,返回這些邊,并計算邊的數(shù)目。
LOOKUP ON FRIEND YIELD edge AS e| YIELD COUNT(*) AS Follow_Number;

返回數(shù)據(jù)

Follow_Number
11

GO

# 語法
GO [[<M> TO] <N> STEPS] FROM <vertex_list>
OVER <edge_type_list> [{REVERSELY | BIDIRECT}]
[WHERE <conditions>]
YIELD [DISTINCT] <return_list>
[{SAMPLE <sample_list> | <limit_by_list_clause>}]
[| GROUP BY {<col_name> | <expression> | <position>} YIELD <col_name>]
[| ORDER BY <expression> [{ASC | DESC}]]
[| LIMIT [<offset>,] <number_rows>];
# 結(jié)果
<vertex_list> ::=<vid> [, <vid> ...]<edge_type_list> ::=<edge_type> [, <edge_type> ...]| *<return_list> ::=<col_name> [AS <col_alias>] [, <col_name> [AS <col_alias>] ...]

參數(shù)說明

參數(shù)說明
<N> STEPS指定跳數(shù)。如果沒有指定跳數(shù),默認值 N 為 1。
M TO N STEPS遍歷 M~N 跳的邊。如果 M 為 0,輸出結(jié)果和 M 為 1 相同。
<vertex_list>用逗號分隔的點 ID 列表,或特殊的引用符 $-.id
<edge_type_list>遍歷的 Edge type 列表。
REVERSELY | BIDIRECT默認情況下檢索的是 <vertex_list> 的出邊(正向),REVERSELY 表示反向,即檢索入邊;BIDIRECT 為雙向,即檢索正向和反向,通過返回 <edge_type>._type 字段判斷方向,其正數(shù)為正向,負數(shù)為反向。
WHERE <conditions>指定遍歷的過濾條件。用戶可以在起始點、目的點和邊使用 WHERE 子句,還可以結(jié)合 AND、OR、NOT、XOR 一起使用。
YIELD [DISTINCT] <return_list>定義需要返回的輸出。當前支持 src(edge)、dst(edge)type(edge) 等。
SAMPLE <sample_list>用于在結(jié)果集中取樣。
<limit_by_list_clause>用于在遍歷過程中逐步限制輸出數(shù)量。
GROUP BY根據(jù)指定屬性的值將輸出分組。
ORDER BY指定輸出結(jié)果的排序規(guī)則。
LIMIT [<offset>,] <number_rows>限制輸出結(jié)果的行數(shù)。詳情參見 LIMIT。

匹配邊

基于 ID 獲取邊信息

# 從節(jié)點 ID 為 "7" 出發(fā),經(jīng)過 "FRIEND" 類型邊,返回目標節(jié)點。
GO FROM "7" OVER FRIEND YIELD dst(edge);

輸出結(jié)果

dst(EDGE)
10
8
9

基于 ID 獲取邊信息和距離(2 步)獲取邊信息

# 從節(jié)點 ID 為 "7" 出發(fā),經(jīng)過 2 步的 "FRIEND" 類型邊,返回目標節(jié)點。
GO 2 STEPS FROM "7" OVER FRIEND YIELD dst(edge);

輸出結(jié)果

dst(EDGE)
10
9

結(jié)果去重

# 從節(jié)點 ID 為 "5" 和 "7" 出發(fā),經(jīng)過 "FRIEND" 類型邊,返回不重復(fù)的起始節(jié)點的 "name" 屬性。
GO FROM "5", "7" OVER FRIEND YIELD DISTINCT properties($^).name AS start_name;

輸出結(jié)果

start_name
小明
小李

點匹配

獲取開始和處理節(jié)點屬性

# 從節(jié)點 ID 為 "5" 和 "7" 出發(fā),經(jīng)過 "FRIEND" 類型邊,返回不重復(fù)的起始節(jié)點的 "name" 屬性和不重復(fù)的目標節(jié)點的 "name" 屬性。
GO FROM "5", "7" OVER FRIEND YIELD DISTINCT properties($^).name AS start_name, properties($$).name AS end_name;

輸出結(jié)果

start_nameend_name
小明小紅
小李小雨
小李小花
小李大海

結(jié)果分組

# 從節(jié)點 ID 為 "5" 和 "7" 出發(fā),經(jīng)過 "FRIEND" 類型邊,獲取邊的源節(jié)點、目標節(jié)點和目標節(jié)點的 "age" 屬性,然后按照源節(jié)點進行分組,返回源節(jié)點、目標節(jié)點集合和目標節(jié)點的 "age" 屬性集合。
GO FROM "5", "7" OVER FRIEND YIELD src(edge) AS src, dst(edge) AS dst, properties($$).age AS age | GROUP BY $-.src YIELD $-.src AS src, collect_set($-.dst) AS dst, collect($-.age) AS age;

輸出結(jié)果

srcdstage
7{“9”, “10”, “8”}[22, 33, 28]
5{“6”}[22]

IS NOT EMPTY

# 從節(jié)點 ID 為 "5" 出發(fā),經(jīng)過 "SUBORDINATE" 類型邊,如果目標節(jié)點的 "name" 屬性不為空,返回目標節(jié)點的邊。
GO FROM "5" OVER SUBORDINATE WHERE properties($$).name IS NOT EMPTY YIELD dst(edge);

輸出結(jié)果

dst(edge)
17
2

FETCH

FETCH 可以獲取指定點或邊的屬性值。

獲取點的屬性值

基于 ID 獲取點的 TAG 信息。

# 獲取節(jié)點 ID 為 "5" 的 "Person" 類型節(jié)點的屬性信息。
FETCH PROP ON Person "5" YIELD properties(vertex);

返回結(jié)果

| properties(VERTEX)                                 |
|----------------------------------------------------|
| {age: 40, name: "小明", type: "領(lǐng)導(dǎo)"}              |

基于 ID 獲取點的 TAG 信息的屬性。

# 獲取節(jié)點 ID 為 "5" 的 "Person" 類型節(jié)點的屬性信息,并將其 "name" 屬性命名為 "name"。
FETCH PROP ON Person "5" YIELD properties(vertex).name AS name;

返回結(jié)果

| name |
|------|
| 小明 |

基于多個 ID 獲取點的 TAG 信息,使用英文逗號分隔。

# 獲取節(jié)點 ID 分別為 "5", "6", "7" 的 "Person" 類型節(jié)點的屬性信息。
FETCH PROP ON Person "5", "6", "7" YIELD properties(vertex);

返回結(jié)果

| properties(VERTEX)                                 |
|----------------------------------------------------|
| {age: 22, name: "小紅", type: "員工"}              |
| {age: 40, name: "小明", type: "領(lǐng)導(dǎo)"}              |
| {age: 45, name: "小李", type: "領(lǐng)導(dǎo)"}              |

在 FETCH 語句中獲取多個 Tag 值,使用英文逗號分隔。

# 獲取具有 "Person" 或 "Employee" 標簽的節(jié)點中,節(jié)點 ID 為 "5" 的節(jié)點的屬性信息,并將其命名為 "v"。
FETCH PROP ON Person, Employee "5" YIELD vertex AS v;

返回結(jié)果

| v                                                |
|--------------------------------------------------|
| ("5" :Person{age: 40, name: "小明", type: "領(lǐng)導(dǎo)"}) |

Tag過濾

查詢多個 ID 的多個 Tag 值。

# 獲取具有 "Person" 或 "Employee" 標簽的節(jié)點中,節(jié)點 ID 分別為 "5", "6" 的節(jié)點的屬性信息,并將其命名為 "v"。
FETCH PROP ON Person, Employee "5", "6" YIELD vertex AS v;

返回結(jié)果

| v                                                |
|--------------------------------------------------|
| ("5" :Person{age: 40, name: "小明", type: "領(lǐng)導(dǎo)"}) |
| ("6" :Person{age: 22, name: "小紅", type: "員工"}) |

在 FETCH 語句中使用 * 獲取當前圖空間所有標簽里,點的屬性值。

# 獲取所有類型的節(jié)點中,節(jié)點 ID 分別為 "5", "6", "7" 的節(jié)點的屬性信息,并將其命名為 "v"。
FETCH PROP ON * "5", "6", "7" YIELD vertex AS v;

返回結(jié)果

| v                                                |
|--------------------------------------------------|
| ("6" :Person{age: 22, name: "小紅", type: "員工"}) |
| ("5" :Person{age: 40, name: "小明", type: "領(lǐng)導(dǎo)"}) |
| ("7" :Person{age: 45, name: "小李", type: "領(lǐng)導(dǎo)"}) |

邊匹配

語法

FETCH PROP ON <edge_type> <src_vid> -> <dst_vid>[@<rank>] [, <src_vid> -> <dst_vid> ...]
YIELD <output>;

參數(shù)說明

參數(shù)說明
edge_typeEdge type 名稱。
src_vid起始點 ID,表示邊的起點。
dst_vid目的點 ID,表示邊的終點。
rank邊的 rank??蛇x參數(shù),默認值為0。起始點、目的點、Edge type 和 rank 可以唯一確定一條邊。
YIELD定義需要返回的輸出。詳情請參見 YIELD。

獲取邊的屬性值

# 獲取從節(jié)點 ID 為 "7" 到節(jié)點 ID 為 "10" 的 "FRIEND" 類型邊的屬性信息。
FETCH PROP ON FRIEND "7" -> "10" YIELD properties(edge);

返回結(jié)果

| properties(EDGE)  |
|-------------------|
| {year: 9}         |

獲取點之間邊的屬性

# 獲取從節(jié)點 ID 為 "7" 到節(jié)點 ID 為 "10" 的 "FRIEND" 類型邊的 "year" 屬性。
FETCH PROP ON FRIEND "7" -> "10" YIELD properties(edge).year;

返回結(jié)果

| properties(EDGE).year  |
|------------------------|
| 9                      |

獲取多條邊的屬性值,模式之間用英文逗號(,)分隔。

# 獲取從節(jié)點 ID 為 "7" 到節(jié)點 ID 為 "8", "9", "10" 的 "FRIEND" 類型邊的屬性信息。
FETCH PROP ON FRIEND "7" -> "8","7" -> "9","7" -> "10" YIELD properties(edge);

返回結(jié)果

| properties(EDGE)  |
|-------------------|
| properties(EDGE)  |
| {year: 2}         |
| {year: 8}         |
| {year: 9}         |

基于 rank 獲取屬性值,

如果有多條邊,起始點、目的點和 Edge type 都相同,可以通過指定 rank 獲取正確的邊屬性值。

# 獲取從節(jié)點 ID 為 "7" 到節(jié)點 ID 為 "8" 的 "FRIEND" 類型邊的屬性信息,并將其命名為 "e"。
FETCH PROP ON FRIEND "7" -> "8"@0 YIELD edge AS e;

返回結(jié)果

| e                                         |
|-------------------------------------------|
| [:FRIEND "7"->"8" @0 {year: 2}]           |

查詢從某個點開始的邊的信息

# 從節(jié)點 ID 為 "7" 出發(fā),通過 "FRIEND" 類型邊的 "src" 和 "dst" 屬性,獲取對應(yīng)的邊
GO FROM "7" OVER FRIEND  YIELD src(edge) AS s, dst(edge) AS d  | FETCH PROP ON FRIEND $-.s -> $-.d  YIELD properties(edge);

返回結(jié)果

properties(EDGE)
{year: 9}
{year: 2}
{year: 8}

SHOW

顯示相關(guān)源數(shù)據(jù)信息

命令說明示例
SHOW CHARSET語句顯示當前的字符集SHOW CHARSET
SHOW COLLATION語句顯示當前的排序規(guī)則SHOW COLLATION
SHOW CREATE SPACE顯示指定圖空間的創(chuàng)建語句SHOW CREATE SPACE <space_name>
SHOW CREATE TAG/EDGE顯示指定 Tag 的基本信息SHOW CREATE {TAG <tag_name>
SHOW HOSTS顯示集群信息,包括端口、狀態(tài)、leader、分片、版本等信息SHOW HOSTS [GRAPH
SHOW INDEX STATUS顯示重建原生索引的作業(yè)狀態(tài)SHOW {TAG
SHOW INDEXES列出當前圖空間內(nèi)的所有 Tag 和 Edge typeSHOW {TAG
SHOW PARTS顯示圖空間中指定分片或所有分片的信息SHOW PARTS [<part_id>]
SHOW ROLES顯示分配給用戶的角色信息SHOW ROLES IN <space_name>
SHOW SNAPSHOTS語句顯示所有快照信息SHOW SNAPSHOTS
SHOW SPACES顯示現(xiàn)存的圖空間SHOW SPACES
SHOW STATS顯示最近一次SUBMIT JOB STATS作業(yè)收集的圖空間統(tǒng)計信息SHOW STATS
SHOW TAGS語句顯示當前圖空間內(nèi)的所有 TagSHOW TAGS
SHOW EDGESSHOW EDGES語句顯示當前圖空間內(nèi)的所有 Edge typeSHOW EDGES
SHOW USERS顯示用戶信息SHOW USERS;
SHOW SESSIONS用戶可以查詢會話信息SHOW [LOCAL] SESSIONS;SHOW SESSION <Session_Id>
SHOW QUERIES查看當前 Session 中正在執(zhí)行的查詢請求信息SHOW [LOCAL] QUERIES
SHOW META LEADER當前 Meta 集群的 leader 信息SHOW META LEADER
http://m.risenshineclean.com/news/61961.html

相關(guān)文章:

  • 本網(wǎng)站建設(shè)在美國數(shù)據(jù)網(wǎng)站
  • 3g開發(fā)網(wǎng)站seo sem推廣
  • 可以做設(shè)計兼職的網(wǎng)站有哪些工作網(wǎng)絡(luò)營銷步驟
  • 如何看別人網(wǎng)站用什么做的網(wǎng)站首頁制作網(wǎng)站
  • 織夢網(wǎng)站一級目錄十大少兒編程教育品牌
  • 智能家居型網(wǎng)站開發(fā)廣安百度推廣代理商
  • seo網(wǎng)站買電腦速成班短期電腦培訓(xùn)班
  • 購物幫做特惠的網(wǎng)站最簡單的網(wǎng)頁制作
  • 如何優(yōu)化公司的網(wǎng)站熱搜榜百度
  • 視頻網(wǎng)站可以做B2C模式嗎網(wǎng)站自然優(yōu)化
  • 新疆烏魯木齊醫(yī)院網(wǎng)站建設(shè)東莞網(wǎng)絡(luò)推廣營銷
  • 給小公司做網(wǎng)站賺錢么江西seo推廣
  • 西寧做腋臭北大網(wǎng)站lseo排名快速刷
  • 怎么做網(wǎng)站超鏈接外媒頭條最新消息
  • 手機視頻網(wǎng)站開發(fā)廠房網(wǎng)絡(luò)推廣平臺
  • 深圳龍崗做網(wǎng)站公司哪家好seo排名首頁
  • 網(wǎng)站界面設(shè)計總結(jié)活動策劃
  • 宿遷做網(wǎng)站電話市場調(diào)研報告模板ppt
  • wordpress響應(yīng)式主題制作教程seo社區(qū)
  • asp動態(tài)網(wǎng)站開發(fā)課后答案廣告引流推廣平臺
  • 網(wǎng)站開發(fā)的方案最火的網(wǎng)絡(luò)銷售平臺
  • 看房子建設(shè)進度的網(wǎng)站在線客服系統(tǒng)平臺有哪些
  • 網(wǎng)站建設(shè)相關(guān)業(yè)務(wù)百度搜索推廣方法
  • 公司網(wǎng)站去哪里做網(wǎng)站關(guān)鍵詞排名查詢
  • 鄭州市網(wǎng)站百度指數(shù)功能模塊
  • 2019廣東省工程建設(shè)網(wǎng)站搜索引擎優(yōu)化代理
  • 任何判斷網(wǎng)站SEO做的好壞中小企業(yè)管理培訓(xùn)課程
  • 蘇州網(wǎng)站設(shè)計價格seo整站怎么優(yōu)化
  • 設(shè)計圖片logo免費安康地seo
  • 做招聘網(wǎng)站需要營業(yè)執(zhí)照嗎網(wǎng)站改版seo建議