Neo4j 應用案例——社交網絡

創建示範案例節點及關係

(1)執行程序

create
(小北:朋友圈{姓名:"小北",喜歡的書類:"Poetry"}), 
(小菲:朋友圈{姓名:"小菲",喜歡的書類:"Science Fiction"}), 
(小鵬:朋友圈{姓名:"小鵬",喜歡的書類:"Music"}), 
(小穎:朋友圈{姓名:"小穎",喜歡的書類:"Politics"}),
(小蘭:朋友圈{姓名:"小蘭",喜歡的書類:"Music"}),
(小峯:朋友圈{姓名:"小峯",喜歡的書類:"Travel"}), 
(小訊:朋友圈{姓名:"小訊",喜歡的書類:"Poetry"}), 
(小東:朋友圈{姓名:"小東",喜歡的書類:"Sequential Art"}), 
(小唯:朋友圈{姓名:"小唯",喜歡的書類:"Young Adult"}), 
(小竇:朋友圈{姓名:"小竇",喜歡的書類:"Poetry"}), 
(小齊:朋友圈{姓名:"小齊",喜歡的書類:"Default"}), 
(小林:朋友圈{姓名:"小林",喜歡的書類:"Poetry"}), 
(小銳:朋友圈{姓名:"小銳",喜歡的書類:"Default"}), 
(小偉:朋友圈{姓名:"小偉",喜歡的書類:"Young Adult"}), 
(小玲:朋友圈{姓名:"小玲",喜歡的書類:"Business"}), 
(小訊)-[:認識]->(小竇), 
(小訊)-[:認識]->(小齊), 
(小訊)-[:認識]->(小林),
(小訊)-[:認識]->(小鵬), 
(小訊)-[:認識]->(小偉), 
(小訊)-[:認識]->(小峯), 
(小菲)-[:認識]->(小鵬), 
(小菲)-[:認識]->(小峯), 
(小菲)-[:認識]->(小唯), 
(小峯)-[:認識]->(小北),
(小峯)-[:認識]->(小蘭), 
(小東)-[:認識]->(小林),
(小東)-[:認識]->(小銳), 
(小東)-[:認識]->(小菲), 
(小鵬)-[:認識]->(小穎), 
(小北)-[:認識]->(小蘭), 
(小穎)-[:認識]->(小東), 
(小唯)-[:認識]->(小鵬), 
(小唯)-[:認識]->(小銳), 
(小偉)-[:認識]->(小玲)

return *

(2)執行結果
在這裏插入圖片描述

1. 展示朋友圈

(1)功能:展示小峯的朋友圈
(2)執行程序

match p = (:朋友圈{姓名:'小峯'})-[*..6]-() return p

(3)執行結果
在這裏插入圖片描述

2. 展示一度關係

(1)展示小訊直接認識的朋友
(2)執行程序

match p=(:朋友圈{姓名:'小訊'})-[:認識]->() return p

(3)執行結果
在這裏插入圖片描述

3. 展示二度關係

(1)功能:展示小訊認識的朋友以及小訊認識的朋友的朋友
(2)執行程序

match p=(:朋友圈{姓名:'小訊'})-[*..2]->() return p

(3)執行結果
在這裏插入圖片描述

4. 依託社交網絡搜尋兩人之間最短熟人路徑

(1)功能:尋找小訊與小銳之間的最短路徑。
(2)執行程序

match p=shortestpath((:朋友圈{姓名:'小訊'})-[*..6]->(:朋友圈{姓名:'小銳'})) return p

(3)執行結果
在這裏插入圖片描述

5. 搜索兩人之間所有的最短路徑

(1)功能:尋找小訊與小菲之間所有的最短路徑
(2)執行程序

match p=allshortestpaths((:朋友圈{姓名:'小訊'})-[*..6]-(:朋友圈{姓名:'小菲'})) return p

(3)執行結果
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章