gremlin語言語法--學習筆記


學習gremlin語言的目的:測試圖數據,支持gremlin語句,所以必須系統學習一下!!!!

一、基礎查詢

g.V()   查詢所有的頂點
g.V(3) 查詢頂點id為3的點。字符串id的要到引號V("tarzan") 
g.E()  查詢所有的邊
g.E('S3:TinkerPop>4>>S4:Gremlin') 根據頂點查詢
g.V().id()  先查詢V()所有點,再id(),獲取所有點的id()
g.E().id()
g.V(1).label() 查詢id為1 的點 類型 不能根據label查頂點label("node")報錯 如果需要的話:g.V().hasLabel('node') g.V().limit(
10).label() 查詢點,取前10個,查出這前十個的點的類型 g.V().limit(10).properties('city') 查出這是個點的city屬性值 g.V(1).properties().key() 查id為1的頂點,他包含的所有屬性key g.V(1).properties().value()

二、邊遍歷

g.V(1).out()  查id為1頂點的out方向的點    結果就是單個點。沒有邊
g.V(1).in() in方向的點
g.V(1).outE() 查的是out方向的邊 結果有點有邊
g.V(1).inE() in方向的邊
g.V(1).both()
以上都是以點開始的。基准點必須是點

g.V('javeme').out('created').out('implements').out('contains').out('supports')

// 4度out()查詢
// 通過id找到“javeme”作者頂點
// 通過out()訪問其創建的軟件
// 繼續通過out()訪問軟件實現的框架
// 繼續通過out()訪問框架包含的軟件
// 繼續通過out()訪問軟件支持的語言

 
        

三、has條件過濾

g.V().hasLabel('person')   查詢所有點,並且篩選出label為person的點

g.V().hasLabel('person','software') 

g.V().hasId('2:marko')  篩選出id為**的點

g.V().has(label, key, value)   通過label和屬性的名字和值過濾頂點和邊  想要通過屬性查詢,你必須要有屬性索引

g.V().has('age', gt(20))    eq相等   ne、neq不相等,   gt大於, lt小於 gte、ge大於等於   lte、le 小於等於    

四、返回結果數限制

g.V().limit(10).count()  count用來計算查詢結果一共有多少個點

g.V().hasLabel('person').range(0,2)  range取查詢結果中的前兩個,和python中一樣
g.V().hasLabel('person').range(0,-1)  獲取所有

g.V().hasLabel('person').limit(1)  limit限制支取查詢結果的第一個

 

五、

 

六、

七、

八、

九、


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM