一. 簡介
neo4j是當今最流行的圖資料庫,基於 節點+關係 的架構,儲存了圖形資料的基本元素。同時,資料庫也支援通過基礎資料元素和獨特的cql查詢語法,快速方便的檢索、構建複雜的圖表關係結果。
二. 基礎知識
windows安裝方法: 安裝方法
cql基本語法:基本語法
三. 例項
我想構建乙個父子繼承關係的圖表結構,以蘇洵蘇軾家族為例,先建節點node如下:
create(suxun:person_)
create(sushi:person_)
create(suzhe:person_)
create(suxiaomei:person_)
create(susun:person_)
create(suxiaosun:person_)
其中有些節點人名為虛構,為了建立例項方便。
因為我資料庫中先前已有person標籤名做了其他的測試,為避免重複和歧義,本例中標簽名起為"person_"。
對於節點之間的關係,為 :
蘇洵-------|------蘇軾 --------------蘇孫 ---------------蘇重孫
|------蘇轍
|------蘇小妹
因此建立結構的cql為:
match(p1:person_),(p2:person_)
where p1.name="蘇洵" and p2.name = "蘇軾"
create (p1) -[parent:parent]-> (p2);
match(p1:person_),(p2:person_)
where p1.name="蘇洵" and p2.name = "蘇轍"
create (p1) -[parent:parent] -> (p2);
match(p1:person_),(p2:person_)
where p1.name="蘇洵" and p2.name = "蘇小妹"
create (p1) -[parent:parent] -> (p2);
match(p1:person_),(p2:person_)
where p1.name="蘇軾" and p2.name = "蘇孫"
create (p1) -[parent:parent] -> (p2);
match(p1:person_),(p2:person_)
create (p1) -[parent:parent] -> (p2);
其中有兩種方法:
第一種用where進行節點篩選,例如 where p1.name="蘇洵" and p2.name = "蘇軾"
第二種用屬性進行節點篩選,例如match(p1:person_),(p2:person_)
兩種方法都可以達到效果
最終結果為:
使用match進行篩選,並且拼裝成樹狀結構:
可以發現,查出來的圖形雖然是只有一條鏈路,但其實代表兩條資料,各**節點,如下
那如果要查詢某個節點開始的**結構呢?
這樣就只篩選得到的是以「蘇洵」為頂點的**結構,依次是「蘇洵」-->「蘇軾」-->「蘇孫」
可看到只有一條資料
Neo4j簡單使用
節點 乙個圖形的乙個基本單元 屬性 描述節點及關係的鍵值對 關係 連線兩個節點的部分,具有方向 標籤 由節點或關係組成,乙個節點可以包含多個標籤 neo4j中使用的資料庫查詢語言是cypher,是一種類sql的宣告式語言,簡稱cql。現簡單示例增刪改查操作。操作一 增 不同於sql中的insert插...
neo4j使用總結
埠配置 外掛程式配置 dbms.jvm.additional dunsupported.dbms.udc.source tarball org.neo4j.server.thirdparty jaxrs classes org.neo4j.tableau.wdc tableau wdc dbms.s...
Neo4j使用操作
neo4j zip環境設定 1 windows 下安裝 2 neo4j啟動 開啟cmd命令列,找到neo4j安裝目錄 在瀏覽器中開啟neo4j操作頁面 輸入賬號密碼,點選connect即可訪問資料庫。注 初始使用者名稱密碼都是neo4j,首次開啟需要修改密碼。資料庫訪問 成功連線資料庫之後進入上圖頁...