4 Cypher基礎語法

2021-08-20 17:53:46 字數 2109 閱讀 1312

cypher作為neo4j的查詢語言,其語法針對圖的特點而設計,非常方便、可讀。

create命令用於建立帶有屬性的節點。 它建立乙個具有一些屬性(鍵值對)的節點來儲存資料。

create (dept

:dept

)

match命令用於從資料庫獲取有關節點和屬性的資料(類似於sql中的select)。

match (dept

:dept)

set子句的作用是向現有節點或關係新增新屬性、新增或更新屬性值。(類似於關係型資料庫中的update。)

match (n:person ) set n.name=

'張三',n.age=

50return n

通過使用delete命令,我們可以從資料庫永久刪除節點及其關聯的屬性。

match (s:teacher)-[r:teach]->(d:student) delete r,s,d//刪除與該關係相關的老師和學生及label 

match (a:person),(b:person) where a.id='erzi'

and b.id='bozi'

merge (a)-[r:fuqi]->(b) delete r//刪除乙個relation

我們可以使用 remove語法從資料庫中永久刪除標籤、節點或關係的屬性或屬性列表。

它的使用方法與delete類似,這裡僅展示示例:

match (n:person ) remove n.age return n //刪除屬性
limit 子句,顯示多少行,最前邊開始:

match (n:person) return n limit 25
skip子句,跳過前多少行:

match (n:person) return n order

by n.id desc skip

2 limit 25

排序語法同sql相同,這裡僅展示示例:

match (n:person) return n order

by n.id,n.name desc //根據id和name進行倒序排列

match (n:person) return n order

by n.id limit 25

//正序排列

與sql一樣,neo4j cql提供了乙個in運算子,以便為cql命令提供值的集合。

match (n:person) where n.age>

20return n.id,n.age

union all

match (n:person) where n.id in

['erzi','bozi','baba'

]return n.id,n.age

當有資料為null的時候,cypher和sql一樣,也可以通過is null / is not null 進行資料過濾。

match (n:person) where n.age>

20return n.id,n.age

union all

match (n:person) where n.id=

'erzi'

and n.age is not

null

return n.id,n.age

與sql一樣,neo4j cql有兩個子句,將兩個不同的結果合併成一組結果:

1.union

2.union all

union:把多段match的return結果 上線組合成乙個結果集,會自動去掉重複行。

union all:作用同union,但不去重。

match (n:person) where n.age>

20return n.id,n.age

union all

match (n:person) where n.id=

'erzi'

return n.id,n.age

Cypher語言語法簡介

cypher對於neo4j資料庫就相當於sql對於mysql資料庫,cypher是neo4j的查詢語言。cypher是專門為影象資料庫設計的語言,它淺顯易懂。cypher的語法結構設計能讓開發者很容易看懂。舉個例子,假如要建立這麼乙個資料模型 好友a與好友b是朋友關係,好友b與c也是朋友關係,好友a...

Cypher語言語法簡介

cypher對於neo4j資料庫就相當於sql對於mysql資料庫,cypher是neo4j的查詢語言。cypher是專門為影象資料庫設計的語言,它淺顯易懂。cypher的語法結構設計能讓開發者很容易看懂。舉個例子,假如要建立這麼乙個資料模型 好友a與好友b是朋友關係,好友b與c也是朋友關係,好友a...

基礎語法4

這是學習python的第三天了,最好今天就把基礎語法全部搞明白 1.pass語句一般用於佔據位置,比如寫乙個函式但是沒有想好具體內容,不然內容會報錯,這個時候就可以寫乙個pass來佔據位置 2.複習複數的運算法則,加減乘除link 在python內 1.整數,字串,元組,都是不可變物件,它們傳遞到函...